diff --git a/docs/.gitbook/assets/rest-spec.json b/docs/.gitbook/assets/rest-spec.json index 33c191ae55e6..2134a586c76b 100644 --- a/docs/.gitbook/assets/rest-spec.json +++ b/docs/.gitbook/assets/rest-spec.json @@ -170,6 +170,287 @@ } } }, + "CopyRuleExtensionRequest": { + "summary": "Copy a rule extension from an existing one", + "value": { + "data": { + "attributes": { + "copy_from": "a6fd4971-1d47-4684-a45d-7d0a372912e0" + }, + "type": "rule_extensions" + } + } + }, + "CreateAssignmentsRequest": { + "summary": "Create rule extension assignments", + "value": { + "data": [ + { + "relationships": { + "rule_extension": { + "data": { + "id": "a6fd4971-1d47-4684-a45d-7d0a372912e0", + "type": "rule_extension" + } + }, + "scope": { + "data": { + "id": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "type": "group" + } + } + }, + "type": "assignments" + }, + { + "relationships": { + "rule_extension": { + "data": { + "id": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "type": "rule_extension" + } + }, + "scope": { + "data": { + "id": "de43030e-19a4-4636-9a31-78fcc1d5fe0c", + "type": "org" + } + } + }, + "type": "assignments" + }, + { + "relationships": { + "rule_extension": { + "data": { + "id": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "type": "rule_extension" + } + }, + "scope": { + "data": { + "id": "7d7d0d14-8b32-4f54-b378-7bd0b1130922", + "type": "org" + } + } + }, + "type": "assignments" + } + ] + } + }, + "CreateSastRuleExtensionRequestDraft": { + "summary": "Create a draft SAST rule extension", + "value": { + "data": { + "attributes": { + "configuration": { + "rule_keys": [ + "XSS", + "DOMXSS" + ], + "type": "flows_through" + }, + "kind": "sast_sanitizer", + "signature": { + "fully_qualified_name": "com.example.xssSanitizer" + }, + "status": "draft" + }, + "type": "rule_extensions" + } + } + }, + "CreateSastRuleExtensionRequestPublished": { + "summary": "Create a published SAST rule extension", + "value": { + "data": { + "attributes": { + "configuration": { + "rule_keys": [ + "Sqli", + "NoSqli" + ], + "type": "if_true" + }, + "description": "MySqlSanitizer allows alphanumeric characters and symbols.", + "kind": "sast_sanitizer", + "signature": { + "fully_qualified_name": "org.example.MySqlSanitizer" + }, + "status": "published" + }, + "type": "rule_extensions" + } + } + }, + "CreateSecretsRegexRuleExtensionRequestDraft": { + "summary": "Create a draft Secrets Regex rule extension", + "value": { + "data": { + "attributes": { + "configuration": { + "type": "addition" + }, + "kind": "secrets_regex", + "signature": { + "regex_pattern": "^[0-9]+$" + }, + "status": "draft" + }, + "type": "rule_extensions" + } + } + }, + "CreateSecretsRegexRuleExtensionRequestPublished": { + "summary": "Create a published Secrets Regex rule extension", + "value": { + "data": { + "attributes": { + "configuration": { + "type": "addition" + }, + "description": "Detect AWS access key IDs in source code.", + "kind": "secrets_regex", + "signature": { + "regex_pattern": "(?i)AKIA[0-9A-Z]{16}" + }, + "status": "published" + }, + "type": "rule_extensions" + } + } + }, + "GetBrokerSettingsResponseEmpty": { + "summary": "No integrations configured", + "value": { + "data": { + "integrations": [] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/82b3efbb-4b32-4f96-8005-9444eceacec8/settings/opensource/Dotnet/broker?version=2024-10-15" + } + } + }, + "GetBrokerSettingsResponseWithIntegrationsGolang": { + "summary": "Broker settings for Golang with Go module proxy \u0026 Go direct (SCM) integrations configured", + "value": { + "data": { + "integrations": [ + { + "created_at": "2026-04-15T10:00:00.000Z", + "id": "019e8800-72c3-7ae4-bb4e-40deea1820c0", + "integration_type": "artifactory", + "urls": [ + "https://artifactory.internal-domain.com/artifactory/api/go/team-go-modules" + ] + }, + { + "created_at": "2026-04-16T10:00:00.000Z", + "id": "019e8800-90bd-7bc0-9666-775eee165cf0", + "integration_type": "nexus-private-repo", + "urls": [ + "https://nexus.internal-domain.com/repository/go-hosted/" + ] + }, + { + "created_at": "2026-06-10T10:00:00.000Z", + "id": "019eb24a-1b01-727d-b051-972dd2fdb8e2", + "integration_type": "github", + "urls": [ + "https://github.com/go-modules-org" + ] + }, + { + "created_at": "2026-06-10T10:00:00.000Z", + "id": "019eb24a-34e3-7a53-aad1-6cedb57427b5", + "integration_type": "bitbucket-cloud", + "urls": [ + "https://bitbucket.org/my-workspace" + ] + } + ] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/db2557c3-ecb8-4d45-8e1e-894ae89a92a6/settings/opensource/Golang/broker?version=2024-10-15" + } + } + }, + "GetBrokerSettingsResponseWithIntegrationsNuGet": { + "summary": "Broker settings for NuGet with some integrations configured", + "value": { + "data": { + "integrations": [ + { + "created_at": "2026-04-15T10:00:00.000Z", + "id": "019d7722-72c3-7ae4-bb4e-40deea1820c0", + "integration_type": "artifactory", + "urls": [ + "https://artifactory.internal-domain.com/artifactory/api/nuget/v3/nuget-group/index.json" + ] + }, + { + "created_at": "2026-04-16T10:00:00.000Z", + "id": "019d7722-90bd-7bc0-9666-775eee165cf0", + "integration_type": "nexus-private-repo", + "urls": [ + "https://nexus.internal-domain.com/repository/nuget-hosted/index.json", + "https://nexus.internal-domain.com/repository/nuget-proxy/index.json" + ] + } + ] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/db2557c3-ecb8-4d45-8e1e-894ae89a92a6/settings/opensource/Dotnet/broker?version=2024-10-15" + } + } + }, + "GetPrivateRegistrySettingsResponseEmpty": { + "summary": "No integrations configured", + "value": { + "data": { + "integrations": [] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/82b3efbb-4b32-4f96-8005-9444eceacec8/settings/opensource/Golang/private-registries?version=2024-10-15" + } + } + }, + "GetPrivateRegistrySettingsResponseWithIntegrations": { + "summary": "Private registry settings with Golang integrations configured", + "value": { + "data": { + "integrations": [ + { + "created_at": "2026-04-15T10:00:00.000Z", + "id": "019e8801-72c3-7ae4-bb4e-40deea1820c0", + "integration_type": "artifactory", + "urls": [ + "https://artifactory.example.com/artifactory/api/go/team-go-modules" + ] + } + ] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/db2557c3-ecb8-4d45-8e1e-894ae89a92a6/settings/opensource/Golang/private-registries?version=2024-10-15" + } + } + }, "IaCListIssuesResponse20240123": { "summary": "An example of a list issue response for an Infrastructure as Code issue.", "value": { @@ -208,6 +489,64 @@ } } }, + "ListAssignmentsResponse": { + "summary": "List rule extension assignments", + "value": { + "data": [ + { + "attributes": { + "created_at": "2025-01-15T10:30:00Z", + "created_by": "de43030e-19a4-4636-9a31-78fcc1d5fe0c" + }, + "id": "a6fd4971-1d47-4684-a45d-7d0a372912e0", + "relationships": { + "rule_extension": { + "data": { + "id": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "type": "rule_extension" + } + }, + "scope": { + "data": { + "id": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "type": "group" + } + } + }, + "type": "assignments" + }, + { + "attributes": { + "created_at": "2025-01-16T14:45:00Z", + "created_by": "de43030e-19a4-4636-9a31-78fcc1d5fe0c" + }, + "id": "b7fe5082-2e58-5795-b56e-8e1b483023f1", + "relationships": { + "rule_extension": { + "data": { + "id": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "type": "rule_extension" + } + }, + "scope": { + "data": { + "id": "de43030e-19a4-4636-9a31-78fcc1d5fe0c", + "type": "org" + } + } + }, + "type": "assignments" + } + ], + "jsonapi": { + "version": "1.0" + }, + "links": { + "next": "/groups/758769f2-5b3a-41eb-b7c2-20bd785be49a/rule_extensions/assignments?starting_after=eyJpZCI6IjIifQ==", + "self": "/groups/758769f2-5b3a-41eb-b7c2-20bd785be49a/rule_extensions/assignments" + } + } + }, "OpenSourceListIssuesResponse20240123": { "summary": "An example of a list issue response for an Open Source issue.", "value": { @@ -245,6 +584,569 @@ "version": "1.0" } } + }, + "PostBrokerSettingsRequestAddIntegrationGolang": { + "summary": "Add a Go module proxy integration (Artifactory Go repository)", + "value": { + "data": { + "integrations": [ + { + "integration_type": "artifactory", + "urls": [ + "https://artifactory.internal-domain.com/artifactory/api/go/team-go-modules" + ] + } + ] + } + } + }, + "PostBrokerSettingsRequestAddIntegrationNuGet": { + "summary": "Add an integration", + "value": { + "data": { + "integrations": [ + { + "integration_type": "artifactory", + "urls": [ + "https://artifactory.internal-domain.com/artifactory/api/nuget/v3/team-nuget/index.json" + ] + } + ] + } + } + }, + "PostBrokerSettingsRequestEditIntegrations": { + "summary": "Edit multiple integrations at once", + "value": { + "data": { + "integrations": [ + { + "integration_type": "artifactory", + "urls": [ + "https://artifactory.internal-domain.com/artifactory/api/nuget/v3/sandbox-nuget/index.json", + "https://artifactory.internal-domain.com/artifactory/api/nuget/v3/production-nuget/index.json" + ] + }, + { + "integration_type": "nexus-private-repo", + "urls": [] + } + ] + } + } + }, + "PostBrokerSettingsRequestRemoveIntegration": { + "summary": "Remove an integration by setting empty urls", + "value": { + "data": { + "integrations": [ + { + "integration_type": "nexus-private-repo", + "urls": [] + } + ] + } + } + }, + "PostBrokerSettingsResponse": { + "summary": "Response after updating broker settings", + "value": { + "data": { + "integrations": [ + { + "created_at": "2024-01-15T10:00:00.000Z", + "id": "019d7722-d843-7b9f-a1dd-bd5c0bac373d", + "integration_type": "artifactory", + "urls": [ + "https://artifactory.internal-domain.com/artifactory/api/nuget/v3/team-nuget/index.json" + ] + } + ] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/4f4fbf18-b2cd-4bf3-9b7e-323b8be249ea/settings/opensource/Dotnet/broker?version=2024-10-15" + } + } + }, + "PostPrivateRegistrySettingsRequestAddIntegration": { + "summary": "Add a Go module proxy integration", + "value": { + "data": { + "integrations": [ + { + "integration_type": "artifactory", + "urls": [ + "https://artifactory.example.com/artifactory/api/go/team-go-modules" + ] + } + ] + } + } + }, + "PostPrivateRegistrySettingsRequestEditIntegrations": { + "summary": "Edit multiple integrations at once", + "value": { + "data": { + "integrations": [ + { + "integration_type": "artifactory", + "urls": [ + "https://artifactory.example.com/artifactory/api/go/team-go-modules", + "https://artifactory.example.com/artifactory/api/go/sandbox-go-modules" + ] + }, + { + "integration_type": "nexus-private-repo", + "urls": [] + } + ] + } + } + }, + "PostPrivateRegistrySettingsRequestRemoveIntegration": { + "summary": "Remove an integration by setting empty urls", + "value": { + "data": { + "integrations": [ + { + "integration_type": "nexus-private-repo", + "urls": [] + } + ] + } + } + }, + "PostPrivateRegistrySettingsResponse": { + "summary": "Response after updating private registry settings", + "value": { + "data": { + "integrations": [ + { + "created_at": "2026-04-15T10:00:00.000Z", + "id": "019e8802-d843-7b9f-a1dd-bd5c0bac373d", + "integration_type": "artifactory", + "urls": [ + "https://artifactory.example.com/artifactory/api/go/team-go-modules" + ] + } + ] + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/orgs/4f4fbf18-b2cd-4bf3-9b7e-323b8be249ea/settings/opensource/Golang/private-registries?version=2024-10-15" + } + } + }, + "PublishSastRuleExtensionRequest": { + "summary": "Publish a draft SAST rule extension", + "value": { + "data": { + "attributes": { + "status": "published" + }, + "id": "a6fd4971-1d47-4684-a45d-7d0a372912e0", + "type": "rule_extensions" + } + } + }, + "PublishSecretsRegexRuleExtensionRequest": { + "summary": "Publish a draft secrets custom regex rule extension", + "value": { + "data": { + "attributes": { + "status": "published" + }, + "id": "b7fe5082-2e58-5795-b56e-8e1b483023f1", + "type": "rule_extensions" + } + } + }, + "SastRuleExtensionResponse": { + "summary": "Response for a SAST rule extension", + "value": { + "data": { + "attributes": { + "configuration": { + "rule_keys": [ + "SQLI", + "java/Sqli" + ], + "type": "flows_through" + }, + "created_at": "2024-10-23T17:32:28Z", + "created_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "description": "SQL injection sanitizer for database queries", + "kind": "sast_sanitizer", + "published_at": "2024-10-24T09:15:00Z", + "published_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "signature": { + "fully_qualified_name": "com.example.sqlSanitizer" + }, + "status": "published", + "updated_at": "2024-10-24T09:15:00Z", + "updated_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a" + }, + "id": "a6fd4971-1d47-4684-a45d-7d0a372912e0", + "type": "rule_extensions" + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/rest/groups/0188104e-7aea-4047-b383-74d8b42d7452/sast/rule_extensions/a6fd4971-1d47-4684-a45d-7d0a372912e0" + } + } + }, + "SastRuleExtensionResponseDraft": { + "summary": "Response for a draft SAST rule extension (created or copied)", + "value": { + "data": { + "attributes": { + "configuration": { + "rule_keys": [ + "XSS", + "DOMXSS" + ], + "type": "flows_through" + }, + "created_at": "2024-10-23T17:32:28Z", + "created_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "kind": "sast_sanitizer", + "published_at": null, + "published_by": null, + "signature": { + "fully_qualified_name": "com.example.xssSanitizer" + }, + "status": "draft", + "updated_at": "2024-10-23T17:32:28Z", + "updated_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a" + }, + "id": "a6fd4971-1d47-4684-a45d-7d0a372912e0", + "type": "rule_extensions" + }, + "jsonapi": { + "version": "1.0" + }, + "links": { + "self": "/rest/groups/758769f2-5b3a-41eb-b7c2-20bd785be49a/sast/rule_extensions/a6fd4971-1d47-4684-a45d-7d0a372912e0" + } + } + }, + "SastTestResponseBodyErrored": { + "value": { + "data": { + "attributes": { + "code": "SNYK-CODE-0003", + "id": "f16c31b5-6129-4571-add8-d589da9be524", + "links": { + "about": "https://docs.snyk.io/scan-with-snyk/error-catalog#snyk-0003" + }, + "meta": { + "classification": "ACTIONABLE", + "isErrorCatalogError": true, + "level": "error" + }, + "status": "ERRORED", + "title": "Client request cannot be processed" + }, + "id": "6d5ac645-9309-4ac8-9808-9bd5251785bb", + "links": { + "self": "/groups/b9ee05cf96cab612c1ce0fd02b9c7ef36f0807b4/sast/rule_extensions/tests/2e31dbe3-2f5f-432c-aab8-d7d51e1078cd" + }, + "type": "tests" + } + } + }, + "SastTestResponseBodyStarted": { + "value": { + "data": { + "attributes": { + "status": "STARTED" + }, + "id": "6d5ac645-9309-4ac8-9808-9bd5251785bb", + "links": { + "self": "/groups/b9ee05cf96cab612c1ce0fd02b9c7ef36f0807b4/sast/rule_extensions/tests/2e31dbe3-2f5f-432c-aab8-d7d51e1078cd" + }, + "type": "tests" + } + } + }, + "SastTestResultsResponseBodyWithFindingsAdded": { + "summary": "Findings are added.", + "value": { + "data": { + "attributes": { + "added_findings": { + "changes": [ + { + "file_path": "src/main/java/DemoController.java", + "location": { + "end_column": 30, + "end_line": 101, + "start_column": 15, + "start_line": 101 + }, + "priority_score": 856, + "rule_id": "javascript/XSS", + "severity": "medium" + } + ], + "count": 1 + }, + "fully_qualified_name": "org.example.MySqlSanitizer", + "org_id": "123e4567-e89b-12d3-a456-426614174000", + "project_commit_sha": "24bf40375aee46daeffd2c260493b2d562fe2c90", + "project_id": "a3b8d4e1-7f1c-4a09-8b7e-2c6f5d1a0b3f", + "rule_keys": [ + "XSS" + ], + "total_count": 1, + "type": "if_true_sanitizer" + }, + "id": "2e31dbe3-2f5f-432c-aab8-d7d51e1078cd", + "type": "results" + }, + "links": { + "self": "/rest/groups/b9ee05cf96cab612c1ce0fd02b9c7ef36f0807b4/sast/rule_extensions/tests/2e31dbe3-2f5f-432c-aab8-d7d51e1078cd/results" + } + } + }, + "SastTestResultsResponseBodyWithFindingsRemoved": { + "summary": "Findings are removed.", + "value": { + "data": { + "attributes": { + "fully_qualified_name": "org.example.MySqlSanitizer", + "org_id": "123e4567-e89b-12d3-a456-426614174000", + "project_commit_sha": "24bf40375aee46daeffd2c260493b2d562fe2c90", + "project_id": "a3b8d4e1-7f1c-4a09-8b7e-2c6f5d1a0b3f", + "removed_findings": { + "changes": [ + { + "file_path": "src/main/java/DemoController.java", + "location": { + "end_column": 22, + "end_line": 55, + "start_column": 8, + "start_line": 55 + }, + "priority_score": 856, + "rule_id": "javascript/Sqli", + "severity": "high" + } + ], + "count": 1 + }, + "rule_keys": [ + "XSS" + ], + "total_count": 1, + "type": "if_true_sanitizer" + }, + "id": "2e31dbe3-2f5f-432c-aab8-d7d51e1078cd", + "type": "results" + }, + "links": { + "self": "/rest/groups/b9ee05cf96cab612c1ce0fd02b9c7ef36f0807b4/sast/rule_extensions/tests/2e31dbe3-2f5f-432c-aab8-d7d51e1078cd/results" + } + } + }, + "SastTestResultsResponseBodyWithFindingsRemovedAndAdded": { + "summary": "Findings are both added and removed.", + "value": { + "data": { + "attributes": { + "added_findings": { + "changes": [ + { + "file_path": "src/main/java/DemoController.java", + "location": { + "end_column": 30, + "end_line": 101, + "start_column": 15, + "start_line": 101 + }, + "priority_score": 856, + "rule_id": "javascript/XSS", + "severity": "medium" + } + ], + "count": 1 + }, + "fully_qualified_name": "org.example.MySqlSanitizer", + "org_id": "123e4567-e89b-12d3-a456-426614174000", + "project_commit_sha": "24bf40375aee46daeffd2c260493b2d562fe2c90", + "project_id": "a3b8d4e1-7f1c-4a09-8b7e-2c6f5d1a0b3f", + "removed_findings": { + "changes": [ + { + "file_path": "src/main/java/DemoApp.java", + "location": { + "end_column": 22, + "end_line": 55, + "start_column": 8, + "start_line": 55 + }, + "priority_score": 856, + "rule_id": "javascript/Sqli", + "severity": "high" + } + ], + "count": 1 + }, + "rule_keys": [ + "XSS" + ], + "total_count": 2, + "type": "if_true_sanitizer" + }, + "id": "2e31dbe3-2f5f-432c-aab8-d7d51e1078cd", + "type": "results" + }, + "links": { + "self": "/rest/groups/b9ee05cf96cab612c1ce0fd02b9c7ef36f0807b4/sast/rule_extensions/tests/2e31dbe3-2f5f-432c-aab8-d7d51e1078cd/results" + } + } + }, + "SastTestResultsResponseBodyWithNoChanges": { + "summary": "There are no changes.", + "value": { + "data": { + "attributes": { + "fully_qualified_name": "org.example.MySqlSanitizer", + "org_id": "123e4567-e89b-12d3-a456-426614174000", + "project_commit_sha": "24bf40375aee46daeffd2c260493b2d562fe2c90", + "project_id": "a3b8d4e1-7f1c-4a09-8b7e-2c6f5d1a0b3f", + "rule_keys": [ + "XSS" + ], + "total_count": 0, + "type": "if_true_sanitizer" + }, + "id": "2e31dbe3-2f5f-432c-aab8-d7d51e1078cd", + "type": "results" + }, + "links": { + "self": "/rest/groups/b9ee05cf96cab612c1ce0fd02b9c7ef36f0807b4/sast/rule_extensions/tests/2e31dbe3-2f5f-432c-aab8-d7d51e1078cd/results" + } + } + }, + "SecretListIssuesResponse20240123": { + "summary": "An example of a list issue response for a Secret issue.", + "value": { + "data": [ + { + "attributes": { + "coordinates": [ + { + "representations": [ + { + "sourceLocation": { + "file": "src/config.js", + "region": { + "end": { + "column": 50, + "line": 3 + }, + "start": { + "column": 10, + "line": 3 + } + } + } + }, + { + "sourceLocation": { + "file": "src/config.js", + "region": { + "end": { + "column": 45, + "line": 12 + }, + "start": { + "column": 5, + "line": 12 + } + } + } + } + ] + } + ], + "created_at": "2022-09-27T20:09:05Z", + "effective_severity_level": "high", + "ignored": false, + "key": "7a3b8e12-4f5c-4d91-b6a2-9c8d0e1f2a3b:4d91b6a2.9c8d0e1f.2a3b7a3b.8e124f5c.f0ecbaa5.18c3080a.b570850e.89112ac5.1a6d2cd5.71413d6f.a924ef28.71cdd50e.d0e1bea5.52c3a80a.1a0c4319.a9127ac5:1", + "status": "open", + "title": "Hard-coded Generic API Key", + "type": "secrets", + "updated_at": "2022-09-27T20:09:05Z" + }, + "id": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "relationships": { + "organization": { + "data": { + "id": "a3952187-0d8e-45d8-9aa2-036642857b5b", + "type": "organization" + } + }, + "scan_item": { + "data": { + "id": "a3952187-0d8e-45d8-9aa2-036642857b5c", + "type": "project" + } + } + }, + "type": "issue" + } + ], + "jsonapi": { + "version": "1.0" + } + } + }, + "UpdateSastRuleExtensionRequestDraft": { + "summary": "Update a draft SAST rule extension", + "value": { + "data": { + "attributes": { + "configuration": { + "rule_keys": [ + "XSS", + "DOMXSS", + "ReflectedXSS" + ], + "type": "any_usage" + }, + "description": "Updated description for XSS sanitizer", + "signature": { + "fully_qualified_name": "com.example.newXssSanitizer" + } + }, + "id": "a6fd4971-1d47-4684-a45d-7d0a372912e0", + "type": "rule_extensions" + } + } + }, + "UpdateSecretsRegexRuleExtensionRequestDraft": { + "summary": "Update a draft secrets custom regex rule extension", + "value": { + "data": { + "attributes": { + "description": "Updated description for AWS key ID detection.", + "signature": { + "regex_pattern": "(?i)ABIA[0-9A-Z]{16}" + } + }, + "id": "b7fe5082-2e58-5795-b56e-8e1b483023f1", + "type": "rule_extensions" + } + } } }, "headers": { @@ -300,6 +1202,14 @@ "type": "integer" } }, + "RetryAfterHeader": { + "description": "A header providing guidance to the client on how many seconds to wait before making a follow-up request to check on the test result.\n", + "example": 10, + "schema": { + "format": "int64", + "type": "integer" + } + }, "SunsetHeader": { "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", @@ -318,7 +1228,7 @@ }, "VersionRequestedResponseHeader": { "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2025-11-05", + "example": "2026-03-25", "schema": { "$ref": "#/components/schemas/QueryVersion" } @@ -334,7 +1244,7 @@ }, "VersionServedResponseHeader": { "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2025-11-05", + "example": "2026-03-25", "schema": { "$ref": "#/components/schemas/ActualVersion" } @@ -387,45 +1297,135 @@ "type": "string" } }, - "AiBomIdParam": { - "description": "The ai_bom id", - "in": "path", - "name": "ai_bom_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - "ApiVersion": { - "description": "The requested version of the endpoint to process the request", - "example": "2024-05-13~experimental", + "AggregateGroupValues": { + "description": "Per-field aggregate function override for meta fields.\nAll fields default to `last` when not specified.\n`max`/`min` compute the SQL MAX/MIN across all assets in the group (scalar fields only).\n`first`/`last` returns the value from the single asset with the earliest/latest\nupdated_at in the group (all field types).\n`sum` computes the total across all assets (numeric fields, issues, labels, tags).\n", + "explode": true, "in": "query", - "name": "version", - "required": true, - "schema": { - "default": "2024-05-13~experimental", - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "AppId": { - "description": "App ID", - "in": "path", - "name": "app_id", - "required": true, - "schema": { - "$ref": "#/components/schemas/Uuid" - } - }, - "AssetId": { - "description": "Unique identifier for the Asset", - "in": "path", - "name": "asset_id", - "required": true, + "name": "aggregate", "schema": { - "format": "uuid", + "properties": { + "built_at": { + "default": "last", + "enum": [ + "max", + "min", + "first", + "last" + ], + "type": "string" + }, + "created_at": { + "default": "last", + "enum": [ + "max", + "min", + "first", + "last" + ], + "type": "string" + }, + "issues": { + "default": "last", + "enum": [ + "first", + "last", + "sum" + ], + "type": "string" + }, + "labels": { + "default": "last", + "enum": [ + "first", + "last", + "sum" + ], + "type": "string" + }, + "last_seen_at": { + "default": "last", + "enum": [ + "max", + "min", + "first", + "last" + ], + "type": "string" + }, + "risk_score": { + "default": "last", + "enum": [ + "max", + "min", + "first", + "last", + "sum" + ], + "type": "string" + }, + "tags": { + "default": "last", + "enum": [ + "first", + "last", + "sum" + ], + "type": "string" + }, + "updated_at": { + "default": "last", + "enum": [ + "max", + "min", + "first", + "last" + ], + "type": "string" + } + }, + "type": "object" + }, + "style": "deepObject" + }, + "AiBomIdParam": { + "description": "The ai_bom id", + "in": "path", + "name": "ai_bom_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + "ApiVersion": { + "description": "The requested version of the endpoint to process the request", + "example": "2025-11-05", + "in": "query", + "name": "version", + "required": true, + "schema": { + "default": "2025-11-05", + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "AppId": { + "description": "App ID", + "in": "path", + "name": "app_id", + "required": true, + "schema": { + "$ref": "#/components/schemas/Uuid" + } + }, + "AssetId": { + "description": "Unique identifier for the Asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", "type": "string" } }, @@ -450,6 +1450,15 @@ "$ref": "#/components/schemas/AssignableByMe" } }, + "BestMatch": { + "description": "When true, match identifier filters in order `rules`, `cves`, `cwes` and\nreturn lessons from the first non-empty bucket (V1 lookup-for-cta\nbehaviour). `ecosystem` still applies. When false (default), AND all\nidentifier filters. Ignored when `cwes`, `cves`, and `rules` are all\nomitted.\n", + "in": "query", + "name": "best_match", + "schema": { + "default": false, + "type": "boolean" + } + }, "BotId": { "description": "Bot ID", "in": "path", @@ -467,6 +1476,34 @@ "type": "boolean" } }, + "CatalogCves": { + "description": "Filter lessons tagged with at least one listed CVE.\nExample: `?cves=CVE-2021-44228` or `?cves=CVE-2021-44228,CVE-2021-45046`.\n", + "example": [ + "CVE-2021-44228", + "CVE-2021-45046" + ], + "explode": false, + "in": "query", + "name": "cves", + "schema": { + "$ref": "#/components/schemas/CatalogCves" + }, + "style": "form" + }, + "CatalogCwes": { + "description": "Filter lessons tagged with at least one listed CWE.\nExample: `?cwes=CWE-79` or `?cwes=CWE-79,CWE-89`.\n", + "example": [ + "CWE-79", + "CWE-89" + ], + "explode": false, + "in": "query", + "name": "cwes", + "schema": { + "$ref": "#/components/schemas/Cwes" + }, + "style": "form" + }, "ChannelId": { "description": "Slack Channel ID", "in": "path", @@ -548,6 +1585,16 @@ "type": "string" } }, + "ContextId": { + "description": "Context ID", + "in": "path", + "name": "context_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, "CreatedAfter": { "description": "Return environments created after this date", "example": "2022-05-06T12:25:15-04:00", @@ -630,6 +1677,23 @@ "type": "string" } }, + "Ecosystem": { + "description": "The package ecosystem", + "in": "path", + "name": "ecosystem", + "required": true, + "schema": { + "enum": [ + "npm", + "pypi", + "maven", + "nuget", + "golang" + ], + "example": "npm", + "type": "string" + } + }, "EffectiveSeverityLevel": { "description": "One or more effective severity levels to filter issues.", "explode": false, @@ -682,6 +1746,15 @@ } }, "EndingBeforeCursor": { + "description": "Return records before the record identified by this cursor", + "example": "v1.MTIzNDU2Nzg5MHxhYmNkZWY=", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + "EndingBeforeCursor__0": { "description": "Return records before the record identified by cursor position ending_before", "in": "query", "name": "ending_before", @@ -689,6 +1762,15 @@ "type": "string" } }, + "EnrichedParam": { + "description": "When true, runs additional slower enrichment steps on the AI-BOM.\n", + "in": "query", + "name": "enriched", + "schema": { + "default": false, + "type": "boolean" + } + }, "EnvironmentId": { "description": "Unique identifier for an environment", "example": "052781a7-17f6-494d-0000-25c8b509abcd", @@ -792,6 +1874,15 @@ "type": "string" } }, + "GoModuleLevel": { + "description": "When true, consolidate Go package-level dependencies into module-level components in the SBOM. Only applies to gomodules graphs; default is false.", + "in": "query", + "name": "go_module_level", + "schema": { + "default": false, + "type": "boolean" + } + }, "GroupId": { "description": "The ID of the Group.", "example": "0d3728ec-eebf-484d-9907-ba238019f10b", @@ -874,6 +1965,16 @@ }, "style": "form" }, + "IncludeCodeFlows": { + "description": "A filter to include data flows for Code issues.", + "in": "query", + "name": "include_code_flows", + "schema": { + "default": false, + "type": "boolean" + }, + "style": "form" + }, "IncludeGroupMembershipCount": { "description": "indicates whether the count of group memberships is included", "in": "query", @@ -950,6 +2051,14 @@ "$ref": "#/components/schemas/EnvironmentKind" } }, + "LessonEcosystem": { + "description": "Filter lessons by ecosystem. `all` has no effect. `npm` matches\n`javascript`. Values not in the enum (e.g. `maven`) are rejected.\n", + "in": "query", + "name": "ecosystem", + "schema": { + "$ref": "#/components/schemas/LessonEcosystem" + } + }, "Limit": { "description": "Number of results to return per page", "example": 10, @@ -964,6 +2073,17 @@ "type": "integer" } }, + "Limit__0": { + "description": "Number of records to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "number" + } + }, "Location": { "description": "Filter resources by location (multi-value, comma-separated) (AWS region)", "example": "us-west-2", @@ -984,6 +2104,50 @@ "$ref": "#/components/schemas/TenantMembershipId" } }, + "MetaCount": { + "description": "Provide summary count in the response meta object when requested.\nWhen `with` is provided, the count will be included in the response meta object.\nWhen `only` is provided, the count will be included in the response meta object and no data will be returned.\n", + "example": "with", + "in": "query", + "name": "meta_count", + "schema": { + "enum": [ + "with", + "only" + ], + "type": "string" + } + }, + "MetaFieldsGroupValues": { + "description": "Meta fields to include in the response. Multiple fields can be specified.\n\nAvailable fields:\n - `count` - Number of assets with this value\n - `created_at` - Aggregated asset creation timestamp (default aggregation: last)\n - `last_seen_at` - Aggregated last_seen_at timestamp (default aggregation: last)\n - `updated_at` - Aggregated updated_at timestamp (default aggregation: last)\n - `risk_score` - Aggregated risk score from discovery sources (default aggregation: last)\n - `issues` - Aggregated issue counts (critical, high, medium, low, total) (default aggregation: last)\n - `labels` - Labels across assets (default aggregation: last)\n - `tags` - Tags across assets (default aggregation: last)\n - `built_at` - Aggregated container image build timestamp (default aggregation: last)\n - `all` - Include all available meta fields\n\nAll fields default to the `last` aggregation function, which returns the value\nfrom the asset with the most recent updated_at in the group. Use the `aggregate`\nparameter to override the aggregation function per field.\n\nIf not specified, the meta object is not included in the response.\n\nNote: Requesting meta fields may impact response time as aggregations\nrequire additional computation.\n", + "example": [ + "count", + "risk_score", + "issues", + "labels" + ], + "explode": false, + "in": "query", + "name": "meta_fields", + "schema": { + "items": { + "enum": [ + "count", + "created_at", + "last_seen_at", + "updated_at", + "risk_score", + "issues", + "labels", + "tags", + "built_at", + "all" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, "Name": { "description": "Filter resources by name (multi-value, comma-separated)", "example": "example-bucket", @@ -1107,7 +2271,8 @@ "name": "org_id", "required": true, "schema": { - "$ref": "#/components/schemas/Uuid" + "format": "uuid", + "type": "string" } }, "OrgMembershipId": { @@ -1130,6 +2295,16 @@ "type": "string" } }, + "PackageName": { + "description": "Package name (URL encoded if needed)", + "in": "path", + "name": "package_name", + "required": true, + "schema": { + "example": "express", + "type": "string" + } + }, "PackageUrl": { "description": "A URI-encoded Package URL (purl). Supported purl types are apk, cargo, cocoapods, composer, conan, deb, gem, generic, golang, hex, maven, npm, nuget, pub, pypi, rpm, and swift. A version for the package is also required. Maven packages support an optional checksum qualifier to request checksum validation. When provided, the response will include checksum validation metadata indicating whether the package and checksum match records in Snyk's database. Checksum format: `algorithm:hex_value` (lowercase), for example `sha1:ad9503c3e994a4f611a4892f2e67ac82df727086`. Only one checksum is supported per request. Supported algorithms: md5, sha1, sha256, sha512.", "example": "pkg:maven/com.fasterxml.woodstox/woodstox-core@5.0.0?checksum=sha1:ad9503c3e994a4f611a4892f2e67ac82df727086", @@ -1140,6 +2315,16 @@ "type": "string" } }, + "PackageVersion": { + "description": "Package version (URL encoded if needed). Accepts semantic versioning formats (e.g., 1.2.3, v1.2.3).\nNote: Golang commit hashes are NOT supported.\n", + "in": "path", + "name": "package_version", + "required": true, + "schema": { + "example": "4.19.2", + "type": "string" + } + }, "PathGroupId": { "description": "Unique identifier for group", "in": "path", @@ -1173,6 +2358,50 @@ "type": "string" } }, + "PathRuleExtensionId": { + "description": "Unique identifier for a rule extension in request path", + "in": "path", + "name": "rule_extension_id", + "required": true, + "schema": { + "example": "4a994d3b-d15e-45c3-bf24-6a26a02ed9ea", + "format": "uuid", + "type": "string" + } + }, + "PathSastRuleExtensionId": { + "description": "Unique identifier for SAST rule extension in request path", + "in": "path", + "name": "rule_extension_id", + "required": true, + "schema": { + "example": "4a994d3b-d15e-45c3-bf24-6a26a02ed9ea", + "format": "uuid", + "type": "string" + } + }, + "PathTestId": { + "description": "Unique identifier for a test result", + "in": "path", + "name": "test_id", + "required": true, + "schema": { + "example": "2e31dbe3-2f5f-432c-aab8-d7d51e1078cd", + "format": "uuid", + "type": "string" + } + }, + "PersonalAccessTokenId": { + "description": "The personal access token id", + "in": "path", + "name": "personal_access_token_id", + "required": true, + "schema": { + "example": "01HSBP9DKDK39KWZQV84PSPRHY", + "format": "ulid", + "type": "string" + } + }, "Platform": { "description": "Filter resources by platform (multi-value, comma-separated): aws", "example": "aws", @@ -1204,6 +2433,61 @@ "type": "string" } }, + "ProjectSortParam": { + "description": "Sort field with optional direction prefix. Prefix with `-` for descending order.\n\n**Supported fields:**\n- `snapshot_created_at` - Snapshot creation timestamp\n- `issues` - Issue counts by severity (critical, high, medium, low)\n\nWhen omitted, results are ordered by `snapshot_created_at` ascending.\n", + "example": "-snapshot_created_at", + "in": "query", + "name": "sort", + "schema": { + "enum": [ + "snapshot_created_at", + "-snapshot_created_at", + "issues", + "-issues" + ], + "type": "string" + } + }, + "QueryExpand": { + "description": "Expand the response with additional fields. When set to `count`, the response will include a `meta` object containing a `total_count` field with the total number of organizations in the group, ignoring any filters applied to the original query.", + "in": "query", + "name": "expand", + "schema": { + "enum": [ + "count" + ], + "example": "count", + "type": "string" + } + }, + "QueryGroupId": { + "description": "Filter by group ID", + "in": "query", + "name": "group_id", + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + "QueryIds": { + "description": "Filter by IDs", + "explode": false, + "in": "query", + "name": "id", + "schema": { + "items": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + }, + "maxItems": 100, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, + "style": "form" + }, "QueryNameFilter": { "description": "Only return organizations whose name contains this value. Case insensitive.", "in": "query", @@ -1212,6 +2496,46 @@ "type": "string" } }, + "QueryOrgId": { + "description": "Filter by organization ID", + "in": "query", + "name": "org_id", + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + "QueryRuleExtensionId": { + "description": "Filter by rule extension ID", + "explode": true, + "in": "query", + "name": "rule_extension_id", + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + }, + "style": "form" + }, + "QueryRuleExtensionIds": { + "description": "Filter by rule extension IDs", + "explode": false, + "in": "query", + "name": "rule_extension_id", + "schema": { + "example": [ + "b667f176-df52-4b0a-9954-117af6b05ab7" + ], + "items": { + "format": "uuid", + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "style": "form" + }, "QuerySlugFilter": { "description": "Only return organizations whose slug exactly matches this value. Case sensitive.", "in": "query", @@ -1239,6 +2563,14 @@ "type": "string" } }, + "RepositoryUrlQuery": { + "description": "Optional repository URL filter — restricts results to the canonical document containing this URL", + "in": "query", + "name": "url", + "schema": { + "type": "string" + } + }, "ResourceId": { "description": "Filter resources by resource ID (multi-value, comma-separated)", "example": "example-bucket", @@ -1291,6 +2623,36 @@ "$ref": "#/components/schemas/RoleId" } }, + "RsqlFilter": { + "description": "RSQL filter expression for filtering results. See schema for full documentation.", + "in": "query", + "name": "filter", + "schema": { + "$ref": "#/components/schemas/RsqlFilterString" + } + }, + "RsqlFilterGroupValues": { + "description": "RSQL filter expression for filtering which assets are included in aggregation.\nSupports the same syntax as the main search filter including full text search with the `q` field.\nSee the RsqlFilterString schema for complete documentation.\n", + "in": "query", + "name": "filter", + "schema": { + "$ref": "#/components/schemas/RsqlFilterString" + } + }, + "Rules": { + "description": "Filter lessons tagged with at least one listed Snyk rule (`snyk_vuln_id`).\nExample: `?rules=SNYK-JS-AXIOS-16298058` or comma-separated for several.\n", + "example": [ + "SNYK-JS-AXIOS-16298058", + "SNYK-JAVA-COMSQUAREUPOKHTTP3-1038737" + ], + "explode": false, + "in": "query", + "name": "rules", + "schema": { + "$ref": "#/components/schemas/Rules" + }, + "style": "form" + }, "ScanId": { "description": "Scan ID", "example": "56465b1d-8764-458c-1234-0987abcd6543", @@ -1330,6 +2692,16 @@ "type": "string" } }, + "SearchId": { + "description": "The unique identifier of the search operation", + "in": "path", + "name": "search_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, "Size": { "description": "Number of results to return per page.", "example": 10, @@ -1387,6 +2759,15 @@ "type": "string" } }, + "SortGroupValues": { + "description": "Comma-separated sort fields for group values. Prefix with `-` for descending order.\nMultiple sort fields are supported (e.g., `-issues,count`).\nDefaults to `created_at` (ascending) when not specified.\nResults are always tie-broken by `value` for deterministic ordering.\n\nAvailable sort fields:\n - `value` - Sort by the group value string (alphabetical)\n - `count` - Sort by the number of assets in each group\n - `created_at` - Sort by the aggregated created_at timestamp\n - `last_seen_at` - Sort by the aggregated last_seen_at timestamp\n - `updated_at` - Sort by the aggregated updated_at timestamp\n - `risk_score` - Sort by the aggregated risk score\n - `built_at` - Sort by the aggregated container image build timestamp\n - `issues` - Sort by issue severity (critical → high → medium → low)\n", + "example": "-count", + "in": "query", + "name": "sort", + "schema": { + "type": "string" + } + }, "SortOrder": { "description": "Order in which results are returned.", "example": "ASC", @@ -1415,6 +2796,32 @@ "type": "string" } }, + "Source": { + "description": "Optional caller-attribution string for Snyk-internal telemetry. When\nthe value is on Snyk's internal allowlist, it is echoed back into each\nreturned resource URL as `?source=\u003cvalue\u003e`; otherwise the value is\nsilently dropped. Third-party consumers can omit this parameter.\n", + "in": "query", + "name": "source", + "schema": { + "maxLength": 64, + "type": "string" + }, + "x-snyk-internal": true + }, + "SparseFieldsets": { + "description": "Sparse fieldsets allow clients to request only specific fields for a given resource type.\nUse the format `fields[\u003ctype\u003e]=field1,field2` where `\u003ctype\u003e` is the JSON:API resource type.\n\n**Container image fields** (use with `fields[container_images]`):\n- `class` - Classification of the asset\n- `registry` - Container registry hostname\n- `repository` - Repository path\n- `config_digest` - Image config digest\n- `distribution_digests` - Distribution digests (manifest/index pairs)\n- `image_tags` - Distinct image tags across all discovery sources\n- `built_at` - When the image was built\n- `size_bytes` - Size of the image in bytes\n- `author` - Image author\n- `architecture` - CPU architecture\n- `os` - Operating system\n- `variant` - CPU architecture variant\n- `os_version` - Operating system version\n- `os_features` - OS features\n- `config` - Image runtime configuration (OCI config)\n- `root_fs` - Root filesystem information\n- `history` - Image build history\n- `inferred_base_images` - Inferred base images\n- `teams` - Teams associated with the asset\n- `labels` - Labels associated with the asset\n- `tags` - Key-value tags for the asset\n- `risk_score` - Risk score for the asset\n- `test_surfaces` - Test surfaces for the asset\n- `issues` - Issue counts by severity\n- `created_at` - When the asset was created\n- `updated_at` - When the asset was last updated\n- `last_scan` - When the asset was last scanned\n- `scan_engines` - Scan engines applied to the asset\n\nNote: `type` and `id` are always included regardless of field selection.\n", + "example": { + "container_images": "registry,repository,config_digest" + }, + "explode": true, + "in": "query", + "name": "fields", + "schema": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "style": "deepObject" + }, "SsoId": { "description": "The ID of the SSO", "in": "path", @@ -1435,6 +2842,15 @@ } }, "StartingAfterCursor": { + "description": "Return records after the record identified by this cursor", + "example": "v1.MTIzNDU2Nzg5MHxhYmNkZWY=", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + "StartingAfterCursor__0": { "description": "Return records after the record identified by cursor position starting_after", "in": "query", "name": "starting_after", @@ -1514,7 +2930,7 @@ } }, "TestIdParam": { - "description": "The test id", + "description": "Test ID returned from the Test API to query.", "in": "path", "name": "test_id", "required": true, @@ -1624,7 +3040,7 @@ }, "Version": { "description": "The requested version of the endpoint to process the request", - "example": "2025-11-05", + "example": "2026-03-25", "in": "query", "name": "version", "required": true, @@ -1798,6 +3214,22 @@ } } } + }, + "EmptyRequestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "type": "object" + } + }, + "type": "object" + } + } + } } }, "responses": { @@ -1824,195 +3256,90 @@ } } }, - "400": { + "303": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/ErrorDocument" + "additionalProperties": false, + "nullable": true, + "type": "object" } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Data is available at the location specified in the \"location\" header", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400__0": { - "content": { - "application/vnd.api+json": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { - "$ref": "#/components/schemas/ErrorDocument__0" + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" } - } - }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "location": { + "$ref": "#/components/headers/LocationHeader" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "401": { - "content": { - "application/vnd.api+json": { + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { - "$ref": "#/components/schemas/ErrorDocument" + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" } - } - }, - "description": "Unauthorized: the request requires an authentication token.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "401__0": { - "content": { - "application/vnd.api+json": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { - "$ref": "#/components/schemas/ErrorDocument__0" + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" } - } - }, - "description": "Unauthorized: the request requires an authentication token.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "403": { - "content": { - "application/vnd.api+json": { + "description": "The version of the endpoint requested by the caller.", "schema": { - "$ref": "#/components/schemas/ErrorDocument" + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" } - } - }, - "description": "Forbidden: the request requires an authentication token with more or different permissions.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "404": { - "content": { - "application/vnd.api+json": { + "description": "The version of the endpoint that was served by the API.", "schema": { - "$ref": "#/components/schemas/ErrorDocument" + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" } - } - }, - "description": "Not Found: The resource being operated on could not be found.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "404__0": { + "400": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/ErrorDocument__0" + "$ref": "#/components/schemas/ErrorDocument" } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -2034,15 +3361,15 @@ } } }, - "409": { + "400__0": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/ErrorDocument" + "$ref": "#/components/schemas/ErrorDocument__0" } } }, - "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -2064,7 +3391,7 @@ } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -2072,7 +3399,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -2094,7 +3421,7 @@ } } }, - "500__0": { + "401__0": { "content": { "application/vnd.api+json": { "schema": { @@ -2102,7 +3429,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -2124,6 +3451,329 @@ } } }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument" + } + } + }, + "description": "Not Found: The resource being operated on could not be found.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "404__0": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument__0" + } + } + }, + "description": "Not Found: The resource being operated on could not be found.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "500__0": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument__0" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "501": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Implemented: The requested operation is not implemented", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader__0" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader__0" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader__0" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader__0" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader__0" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader__0" + } + } + }, "503": { "content": { "application/vnd.api+json": { @@ -2733,6 +4383,9 @@ }, "OpenSource": { "$ref": "#/components/examples/OpenSourceListIssuesResponse20240123" + }, + "Secrets": { + "$ref": "#/components/examples/SecretListIssuesResponse20240123" } }, "schema": { @@ -2913,10 +4566,47 @@ }, "ActualVersion": { "description": "Resolved API version", - "example": "2025-11-05", + "example": "2026-03-25", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" }, + "AddRepositoryAliasAttributes": { + "properties": { + "new_url": { + "description": "The alias URL to link to the canonical URL", + "example": "https://github.com/org/repo-renamed.git", + "type": "string" + }, + "url": { + "description": "The canonical URL", + "example": "https://github.com/org/repo.git", + "type": "string" + } + }, + "required": [ + "url", + "new_url" + ], + "type": "object" + }, + "AddRepositoryAliasRequestData": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/AddRepositoryAliasAttributes" + }, + "type": { + "enum": [ + "asset_aliases" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + }, "AiBomAttributes": { "additionalProperties": true, "description": "The AI-Bom document", @@ -3673,6 +5363,27 @@ ], "type": "object" }, + "Architecture": { + "description": "CPU architecture for container images (Go GOARCH conventions)", + "enum": [ + "386", + "amd64", + "arm", + "arm64", + "loong64", + "mips", + "mips64", + "mips64le", + "mipsle", + "ppc64", + "ppc64le", + "riscv64", + "s390x", + "wasm", + "other" + ], + "type": "string" + }, "ArtifactoryAttributes": { "properties": { "required": { @@ -3931,6 +5642,117 @@ }, "type": "object" }, + "AssetBaseAttributes": { + "description": "Asset-level fields shared across all asset types.", + "properties": { + "class": { + "$ref": "#/components/schemas/ClassResponse" + }, + "created_at": { + "description": "When the asset was created", + "format": "date-time", + "type": "string" + }, + "issues": { + "$ref": "#/components/schemas/IssueCounts" + }, + "labels": { + "description": "Labels associated with the asset", + "items": { + "maxLength": 40, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "last_scan": { + "format": "date-time", + "type": "string" + }, + "last_seen_at": { + "description": "When the asset was last seen (i.e., confirmed to exist) via any discovery source.\nUpdated on every upsert operation.\n", + "format": "date-time", + "type": "string" + }, + "org_ids": { + "description": "Every org the asset belongs to across the tenant, sourced from the asset\nscope summary. Tenant-wide regardless of the request scope. Only populated\nfor scan-backed asset types (container images and SBOMs); omitted for\nrepository assets.\n", + "items": { + "format": "uuid", + "type": "string" + }, + "maxItems": 10000, + "type": "array" + }, + "origin_timestamp": { + "description": "The asset's source-defined timestamp — when the underlying artifact was created at its origin (e.g. a container image's build time or an SBOM's generation time). Distinct from created_at, which is when the asset record was created in Snyk. Null when unknown.", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "risk_score": { + "description": "Risk score for the asset", + "format": "int32", + "type": "integer" + }, + "scan_engines": { + "description": "Scan engines applied to the asset", + "items": { + "$ref": "#/components/schemas/ScanEngine" + }, + "maxItems": 50, + "type": "array" + }, + "tags": { + "additionalProperties": { + "maxLength": 40, + "type": "string" + }, + "description": "Key-value tags for the asset", + "maxProperties": 100, + "type": "object" + }, + "teams": { + "description": "Teams associated with the asset", + "items": { + "maxLength": 64, + "type": "string" + }, + "maxItems": 20, + "type": "array" + }, + "test_surfaces": { + "description": "Test surfaces for the asset", + "items": { + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "updated_at": { + "description": "When the asset was last updated", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "AssetBulkPatchRequestBody": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AssetPatchData" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "AssetClass": { "additionalProperties": false, "anyOf": [ @@ -4023,6 +5845,139 @@ }, "type": "object" }, + "AssetListResponse": { + "additionalProperties": false, + "properties": { + "data": { + "description": "Polymorphic array of asset objects of different types", + "items": { + "$ref": "#/components/schemas/PolymorphicAssetData" + }, + "type": "array" + }, + "links": { + "$ref": "#/components/schemas/PaginationLinks" + }, + "meta": { + "description": "Metadata about the response", + "properties": { + "count": { + "description": "Total number of assets matching the query", + "type": "integer" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AssetPatchAttributes": { + "additionalProperties": false, + "description": "Attributes that can be updated via PATCH.\nAt least one attribute must be provided.\nLabels and tags support add/remove operations for atomic modifications.\n", + "properties": { + "class": { + "additionalProperties": false, + "anyOf": [ + { + "required": [ + "display_name" + ] + }, + { + "required": [ + "rank" + ] + } + ], + "description": "Asset classification for input. Either display_name or rank must be provided.", + "properties": { + "display_name": { + "enum": [ + "A", + "B", + "C", + "D" + ], + "type": "string" + }, + "locked": { + "type": "boolean" + }, + "rank": { + "enum": [ + 1, + 2, + 3, + 4 + ], + "type": "integer" + } + }, + "type": "object" + }, + "labels": { + "oneOf": [ + { + "$ref": "#/components/schemas/LabelsUpdate" + }, + { + "$ref": "#/components/schemas/LabelsReplace" + } + ] + }, + "tags": { + "oneOf": [ + { + "$ref": "#/components/schemas/TagsUpdate" + }, + { + "$ref": "#/components/schemas/TagsReplace" + } + ] + } + }, + "type": "object" + }, + "AssetPatchData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/AssetPatchAttributes" + }, + "id": { + "description": "The unique identifier of the asset", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The JSON:API resource type", + "enum": [ + "container_images", + "sboms", + "repositories" + ], + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, + "AssetPatchRequestBody": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssetPatchData" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "AssetProjectAttributes": { "properties": { "issues_counts": { @@ -4221,13 +6176,28 @@ "example": false, "type": "boolean" }, + "Assignment": { + "additionalProperties": false, + "properties": { + "relationships": { + "$ref": "#/components/schemas/AssignmentRelationships" + }, + "type": { + "$ref": "#/components/schemas/AssignmentType" + } + }, + "required": [ + "type", + "relationships" + ], + "type": "object" + }, "AssignmentCreationAttributes": { "properties": { "learning_path_ids": { - "description": "Array of learning path IDs that contain the lessons being assigned.\nOnly include when assignments are created from learning paths.\nThe system will automatically determine which lessons belong to which learning paths.\n", + "description": "Optional array of learning path IDs for tracking and metadata purposes only.\n\n**Important:** This field does NOT automatically expand learning paths into lessons. \nYou must explicitly provide all lesson IDs in the **lesson_ids** field.\n\nUse this field to record which learning paths these lessons belong to for reporting \nand analytics purposes.\n", "example": [ - "lp-uuid-A", - "lp-uuid-B" + "30526dd7-efbd-4254-a963-3e6383c6ebdc" ], "items": { "type": "string" @@ -4235,16 +6205,35 @@ "type": "array" }, "lesson_ids": { + "description": "Array of lesson IDs to assign. Must contain at least one lesson ID.\n\n**To assign all lessons from a learning path:**\n1. Call [List Snyk Learn's resources](#operation/listLearnCatalog) (GET /rest/learn/catalog)\n2. Find the learning path in the response data array\n3. Extract the **lesson_ids** array from the learning path's **attributes**\n4. Pass those lesson IDs to this field\n", + "example": [ + "215947a8-d678-50aa-56e0-270c983b4c48", + "12cde434-5fcb-4c9c-92d0-c4040b735a77", + "83bc3aa6-df84-478c-8b46-f8499a60129f", + "eb44604a-48e2-49af-d86b-8ddc2ead52b0", + "2bcea8ed-fb48-4563-9c1a-10e37bbf70c6", + "af794526-aa3b-476b-9d20-6806ea87f0b6", + "f654aed0-4c94-4e83-791f-6d39630ce0ed", + "7ebd499c-973e-4ec0-4d93-07dbe68a9d9b", + "cd0b4c2b-b6c9-4c04-f3dd-4094a2819b36", + "ab3f6f4c-3a45-4388-32b0-5f97e24d46b6" + ], "items": { "type": "string" }, + "minItems": 1, "type": "array" }, "user_ids": { + "description": "Array of user IDs (UUIDs) to assign lessons to. Must contain at least one user ID.", + "example": [ + "00000000-0000-0000-0000-000000000001" + ], "items": { "format": "uuid", "type": "string" }, + "minItems": 1, "type": "array" } }, @@ -4272,6 +6261,199 @@ ], "type": "object" }, + "AssignmentRelationships": { + "additionalProperties": false, + "properties": { + "rule_extension": { + "$ref": "#/components/schemas/AssignmentRuleExtension" + }, + "scope": { + "$ref": "#/components/schemas/AssignmentScope" + } + }, + "required": [ + "rule_extension", + "scope" + ], + "type": "object" + }, + "AssignmentResponse": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/AssignmentResponseAttributes" + }, + "id": { + "description": "The unique identifier of the assignment.", + "format": "uuid", + "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/AssignmentRelationships" + }, + "type": { + "$ref": "#/components/schemas/AssignmentType" + } + }, + "required": [ + "type", + "id", + "attributes", + "relationships" + ], + "type": "object" + }, + "AssignmentResponseAttributes": { + "additionalProperties": false, + "properties": { + "created_at": { + "description": "The timestamp when the assignment was created.", + "format": "date-time", + "type": "string" + }, + "created_by": { + "description": "The ID of the user who created the assignment.", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "created_at" + ], + "type": "object" + }, + "AssignmentRuleExtension": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssignmentRuleExtensionData" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "AssignmentRuleExtensionData": { + "additionalProperties": false, + "properties": { + "id": { + "$ref": "#/components/schemas/SastRuleExtensionId" + }, + "type": { + "$ref": "#/components/schemas/AssignmentSastRuleExtensionRequestType" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "AssignmentSastRuleExtensionRequestType": { + "description": "The type identifier of the relationship in the assignment request items.", + "enum": [ + "rule_extension" + ], + "type": "string" + }, + "AssignmentScope": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssignmentScopeData" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "AssignmentScopeData": { + "additionalProperties": false, + "properties": { + "id": { + "$ref": "#/components/schemas/AssignmentScopeId" + }, + "type": { + "$ref": "#/components/schemas/AssignmentScopeType" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "AssignmentScopeId": { + "description": "The ID of the scope the rule extension is assigned to", + "format": "uuid", + "type": "string" + }, + "AssignmentScopeType": { + "description": "The type of the scope the rule extension is assigned to", + "enum": [ + "group", + "org" + ], + "type": "string" + }, + "AssignmentType": { + "description": "The type identifier for the \"assignments\" resource.", + "enum": [ + "assignments" + ], + "type": "string" + }, + "AssignmentsRequest": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssignmentsRequestData" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "AssignmentsRequestData": { + "description": "Array of assignments for the requested rule extensions.", + "items": { + "$ref": "#/components/schemas/Assignment" + }, + "maxItems": 100, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, + "AssignmentsResponseBody": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssignmentsResponseData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + }, + "AssignmentsResponseData": { + "description": "Array of assignments for the requested group.", + "items": { + "$ref": "#/components/schemas/AssignmentResponse" + }, + "type": "array" + }, "AuditLogSearch": { "properties": { "items": { @@ -4505,6 +6687,13 @@ }, "BaseFilters": { "properties": { + "cve": { + "description": "CVE identifier(s) to filter by (e.g. CVE-2024-1234). Rows whose cve is in this list are included.", + "items": { + "type": "string" + }, + "type": "array" + }, "empty_project_tags": { "enum": [ "include", @@ -4520,17 +6709,19 @@ "type": "array" }, "introduced": { - "properties": { - "from": { - "format": "date-time", - "type": "string" - }, - "to": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/schemas/FilterDateRange" + }, + "issue_status": { + "items": { + "type": "string" }, - "type": "object" + "type": "array" + }, + "issue_type": { + "items": { + "type": "string" + }, + "type": "array" }, "lifecycle": { "items": { @@ -4538,44 +6729,176 @@ }, "type": "array" }, + "nvd_severity": { + "items": { + "type": "string" + }, + "type": "array" + }, "product_name": { "items": { "type": "string" }, "type": "array" }, + "project_origin": { + "items": { + "type": "string" + }, + "type": "array" + }, "project_tags": { "items": { "type": "string" }, "type": "array" }, + "project_target_display_name": { + "items": { + "type": "string" + }, + "type": "array" + }, + "project_target_ref": { + "items": { + "type": "string" + }, + "type": "array" + }, "project_type": { "items": { "type": "string" }, "type": "array" }, + "reachability": { + "items": { + "type": "string" + }, + "type": "array" + }, "updated": { - "properties": { - "from": { - "format": "date-time", - "type": "string" - }, - "to": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/schemas/FilterDateRange" + } + }, + "type": "object" + }, + "BaseImageRemediation": { + "description": "Base image upgrade recommendation data from container scanning", + "properties": { + "base_image": { + "$ref": "#/components/schemas/ImageInfo" + }, + "base_image_name": { + "description": "The name of the current base image", + "type": "string" + }, + "base_image_outdated": { + "description": "Whether the current base image is outdated", + "type": "boolean" + }, + "code": { + "description": "Remediation code identifying the type of recommendation", + "type": "string" + }, + "distro_alert": { + "description": "Alert message about the base image distribution", + "type": "string" + }, + "proposed_base_images": { + "$ref": "#/components/schemas/ProposedBaseImages" + } + }, + "required": [ + "code", + "base_image_name" + ], + "type": "object" + }, + "BasePackageAttributes": { + "description": "Common attributes shared between package and package version resources", + "properties": { + "description": { + "description": "Package description from the registry (max 255 characters)", + "example": "Fast, unopinionated, minimalist web framework", + "type": "string" + }, + "ecosystem": { + "description": "The package ecosystem", + "enum": [ + "npm", + "pypi", + "maven", + "nuget", + "golang" + ], + "example": "npm", + "type": "string" + }, + "keywords": { + "description": "Searchable terms defined by the package maintainer in the registry (e.g., in package.json for npm). Used for package discovery (max 20 keywords).", + "example": [ + "node", + "javascript", + "express", + "server" + ], + "items": { + "type": "string" }, - "type": "object" + "type": "array" + }, + "language": { + "description": "Primary programming language of the package", + "example": "JavaScript", + "type": "string" + }, + "owner_details": { + "$ref": "#/components/schemas/OwnerDetails" + }, + "package_health": { + "$ref": "#/components/schemas/PackageHealth" + }, + "package_id": { + "description": "Package identifier in PURL format", + "example": "pkg:npm/express", + "type": "string" + }, + "package_name": { + "description": "Name of the package", + "example": "express", + "type": "string" } }, + "required": [ + "package_id", + "ecosystem", + "package_name", + "language" + ], "type": "object" }, "BaseResource": { + "description": "BaseResources contain a single instance of testable content.", + "example": { + "resource": { + "content_type": "source", + "file_patterns": [], + "repository_url": "https://github.com/example/repo", + "revision_id": "00000000-0000-0000-0000-000000000000", + "root_folder_id": ".", + "type": "upload" + }, + "type": "base" + }, "properties": { "resource": { - "$ref": "#/components/schemas/BaseResourceVariant" + "allOf": [ + { + "$ref": "#/components/schemas/BaseResourceVariant" + } + ], + "description": "The specific representation of what content to test." }, "type": { "enum": [ @@ -4591,9 +6914,26 @@ "type": "object" }, "BaseResourceCreateItem": { + "description": "BaseResources contain a single instance of testable content.", + "example": { + "resource": { + "content_type": "source", + "file_patterns": [], + "repository_url": "https://github.com/example/repo", + "revision_id": "00000000-0000-0000-0000-000000000000", + "root_folder_id": ".", + "type": "upload" + }, + "type": "base" + }, "properties": { "resource": { - "$ref": "#/components/schemas/BaseResourceVariantCreateItem" + "allOf": [ + { + "$ref": "#/components/schemas/BaseResourceVariantCreateItem" + } + ], + "description": "The specific representation of what content to test." }, "type": { "enum": [ @@ -4609,7 +6949,6 @@ "type": "object" }, "BaseResourceVariant": { - "description": "Resources containing testable content.", "discriminator": { "mapping": { "bundle": "#/components/schemas/BundleResource", @@ -4643,7 +6982,6 @@ ] }, "BaseResourceVariantCreateItem": { - "description": "Resources containing testable content.", "discriminator": { "mapping": { "bundle": "#/components/schemas/BundleResource", @@ -4908,6 +7246,45 @@ "type": "object" }, "BrokerDeploymentAttributes": { + "additionalProperties": false, + "properties": { + "broker_app_installed_in_org_id": { + "description": "Org Id in which the Broker App is installed", + "format": "uuid", + "type": "string" + }, + "created_at": { + "description": "Deployment creation time in UTC", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "install_id": { + "description": "Associated Install ID", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "metadata": { + "description": "Metadata information such user/org id or metrics", + "type": "object" + }, + "updated_at": { + "description": "Deployment last update time in UTC", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "broker_app_installed_in_org_id", + "metadata", + "created_at", + "updated_at" + ], + "type": "object" + }, + "BrokerDeploymentCreateAttributes": { "additionalProperties": false, "properties": { "broker_app_installed_in_org_id": { @@ -4932,6 +7309,25 @@ ], "type": "object" }, + "BrokerDeploymentCreateResource": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/BrokerDeploymentCreateAttributes" + }, + "type": { + "enum": [ + "broker_deployment" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + }, "BrokerDeploymentResource": { "additionalProperties": false, "properties": { @@ -5006,6 +7402,74 @@ ], "type": "object" }, + "BrokerIntegration": { + "additionalProperties": false, + "properties": { + "created_at": { + "description": "When this integration was created", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The unique identifier for the ecosystem integration", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "integration_type": { + "description": "The type of integration (e.g., 'artifactory', 'nexus-private-repo')", + "enum": [ + "artifactory", + "nexus-private-repo", + "github", + "github-cloud-app", + "github-server-app", + "github-enterprise", + "bitbucket-cloud", + "bitbucket-connect-app", + "bitbucket-server", + "gitlab", + "azure-repos" + ], + "example": "artifactory", + "type": "string" + }, + "urls": { + "description": "Array of URLs associated with this integration. Set this field to undefined, an empty array, or omit it to delete the integration.", + "example": [ + "https://my-custom-artifactory.internal/artifactory/api/nuget/v3/my-nuget/index.json", + "https://my-custom-artifactory.internal/artifactory/api/nuget/v3/my-other-nuget/index.json", + "https://my-custom-artifactory.internal/artifactory/api/go/my-go-modules" + ], + "items": { + "format": "uri", + "maxLength": 2048, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "integration_type" + ], + "type": "object" + }, + "BrokerSettings": { + "additionalProperties": false, + "properties": { + "integrations": { + "items": { + "$ref": "#/components/schemas/BrokerIntegration" + }, + "type": "array" + } + }, + "required": [ + "integrations" + ], + "type": "object" + }, "BulkMigrationCreateResponse": { "additionalProperties": false, "properties": { @@ -5084,12 +7548,24 @@ "type": "object" }, "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.", + "example": { + "bundle_id": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef", + "content_type": "source", + "file_patterns": [], + "repository_url": "https://github.com/example/repo", + "root_folder_id": ".", + "type": "bundle" + }, "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).", + "example": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef", "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" @@ -5097,25 +7573,31 @@ "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": { - "type": "string" + "$ref": "#/components/schemas/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": { - "format": "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": "#/components/schemas/ScmContext" + }, "type": { "enum": [ "bundle" @@ -5175,6 +7657,20 @@ ], "type": "object" }, + "CatalogCves": { + "description": "CVE identifiers (e.g. CVE-2021-44228). Up to 50 unique values.", + "example": [ + "CVE-2021-44228" + ], + "items": { + "pattern": "^CVE-\\d+-\\d+$", + "type": "string" + }, + "maxItems": 50, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, "CatalogProgress": { "properties": { "attributes": { @@ -5483,6 +7979,39 @@ ], "type": "object" }, + "ClassResponse": { + "additionalProperties": false, + "description": "Asset classification in response", + "properties": { + "display_name": { + "enum": [ + "A", + "B", + "C", + "D" + ], + "type": "string" + }, + "locked": { + "default": false, + "type": "boolean" + }, + "rank": { + "enum": [ + 1, + 2, + 3, + 4 + ], + "type": "integer" + } + }, + "required": [ + "display_name", + "rank" + ], + "type": "object" + }, "ClassTypeDef": { "enum": [ "rule-category", @@ -5771,35 +8300,164 @@ }, "type": "object" }, + "CommunityDetails": { + "additionalProperties": false, + "description": "Community health signals for the package", + "properties": { + "description": { + "description": "Human-readable explanation of the community rating", + "type": "string" + }, + "has_code_of_conduct_file": { + "description": "Whether the repository has a CODE_OF_CONDUCT file", + "type": "boolean" + }, + "has_contributing_file": { + "description": "Whether the repository has a CONTRIBUTING file", + "type": "boolean" + }, + "has_funding_file": { + "description": "Whether the repository has a FUNDING file", + "type": "boolean" + }, + "has_readme_file": { + "description": "Whether the repository has a README file", + "type": "boolean" + }, + "rating": { + "description": "Overall community health level, reflecting how active and engaged the package's community appears to be", + "enum": [ + "Active", + "Sustainable", + "Limited" + ], + "type": "string" + }, + "stargazers_count": { + "description": "Number of GitHub stars (\u003e= 0)", + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "has_code_of_conduct_file", + "has_contributing_file", + "has_funding_file", + "has_readme_file", + "stargazers_count" + ], + "type": "object" + }, + "Component": { + "description": "A component in software, such as a library or package dependency", + "properties": { + "count": { + "description": "Number of components in the SBOM", + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "declared_license_expression": { + "description": "See https://spdx.github.io/spdx-spec/v3.0.1/annexes/spdx-license-expressions/", + "maxLength": 2048, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Free form text description of this component", + "maxLength": 4096, + "nullable": true, + "type": "string" + }, + "licenses": { + "description": "Human readable license strings", + "items": { + "maxLength": 128, + "type": "string" + }, + "maxLength": 32, + "type": "array" + }, + "name": { + "description": "The name of the component", + "maxLength": 255, + "type": "string" + }, + "purl": { + "description": "Package URL", + "maxLength": 4096, + "nullable": true, + "type": "string" + }, + "supplier": { + "$ref": "#/components/schemas/Party" + }, + "type": { + "description": "The type of this component", + "maxLength": 64, + "nullable": true, + "type": "string" + }, + "vcs_references": { + "description": "Relevant VCS for this component", + "items": { + "$ref": "#/components/schemas/VcsReference" + }, + "type": "array" + }, + "version": { + "description": "The version of the component, e.x. 0.2.0", + "maxLength": 255, + "nullable": true, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "ComposerSettings": { + "additionalProperties": false, + "properties": { + "include_dev_dependencies": { + "type": "boolean" + } + }, + "required": [ + "include_dev_dependencies" + ], + "type": "object" + }, "ConfigurationAttributes": { "properties": { "configuration": { "discriminator": { "mapping": { - "acr": "./acr.yaml#/schemas/AcrAttributes", - "apprisk": "./apprisk.yaml#/schemas/AppRiskAttributes", - "artifactory": "./artifactory.yaml#/schemas/ArtifactoryAttributes", - "artifactory-cr": "./artifactoryCr.yaml#/schemas/ArtifactoryCr", - "azure-repos": "./azureRepos.yaml#/schemas/AzureReposAttributes", - "bitbucket-server": "./bitbucketServer.yaml#/schemas/BitbucketServerAttributes", - "digitalocean-cr": "./digitaloceanCr.yaml#/schemas/DigitalOceanCrAttributes", - "docker-hub": "./dockerHub.yaml#/schemas/DockerHubAttributes", - "ecr": "./ecr.yaml#/schemas/EcrAttributes", - "gcr": "./gcr.yaml#/schemas/GcrAttributes", - "github": "./github.yaml#/schemas/GitHubAttributes", - "github-cloud-app": "./githubServerApp.yaml#/schemas/GitHubCloudAppAttributes", - "github-cr": "./githubCr.yaml#/schemas/GithubCrAttributes", - "github-enterprise": "./githubEnterprise.yaml#/schemas/GitHubEnterpriseAttributes", - "github-server-app": "./githubServerApp.yaml#/schemas/GitHubServerAppAttributes", - "gitlab": "./gitlab.yaml#/schemas/GitLabAttributes", - "gitlab-cr": "./gitlabCr.yaml#/schemas/GitlabCrAttributes", - "google-artifact-cr": "./googleArtifactCr.yaml#/schemas/GoogleArtifactCrAttributes", - "harbor-cr": "./harborCr.yaml#/schemas/HarborCrAttributes", - "jira": "./jira.yaml#/schemas/JiraAttributes", - "nexus": "./nexus.yaml#/schemas/NexusAttributes", - "nexus-cr": "./nexusCr.yaml#/schemas/NexusCrAttributes", - "quay-cr": "./quayCr.yaml#/schemas/QuayCrAttributes", - "workload": "./workload.yaml#/schemas/WorkloadAttributes" + "acr": "#/components/schemas/AcrAttributes", + "apprisk": "#/components/schemas/AppRiskAttributes", + "artifactory": "#/components/schemas/ArtifactoryAttributes", + "artifactory-cr": "#/components/schemas/ArtifactoryCrAttributes", + "azure-repos": "#/components/schemas/AzureReposAttributes", + "bitbucket-server": "#/components/schemas/BitbucketServerAttributes", + "digitalocean-cr": "#/components/schemas/DigitalOceanCrAttributes", + "docker-hub": "#/components/schemas/DockerHubAttributes", + "ecr": "#/components/schemas/EcrAttributes", + "gcr": "#/components/schemas/GcrAttributes", + "github": "#/components/schemas/GitHubAttributes", + "github-cloud-app": "#/components/schemas/GitHubCloudAppAttributes", + "github-cr": "#/components/schemas/GithubCrAttributes", + "github-enterprise": "#/components/schemas/GitHubEnterpriseAttributes", + "github-server-app": "#/components/schemas/GitHubServerAppAttributes", + "gitlab": "#/components/schemas/GitLabAttributes", + "gitlab-cr": "#/components/schemas/GitlabCrAttributes", + "google-artifact-cr": "#/components/schemas/GoogleArtifactCrAttributes", + "harbor-cr": "#/components/schemas/HarborCrAttributes", + "jira": "#/components/schemas/JiraAttributes", + "nexus": "#/components/schemas/NexusAttributes", + "nexus-cr": "#/components/schemas/NexusCrAttributes", + "quay-cr": "#/components/schemas/QuayCrAttributes", + "workload": "#/components/schemas/WorkloadAttributes" }, "propertyName": "type" }, @@ -6037,6 +8695,127 @@ ], "type": "object" }, + "ContainerImageAttributesResponse": { + "allOf": [ + { + "$ref": "#/components/schemas/AssetBaseAttributes" + }, + { + "description": "Attributes specific to container image assets.", + "properties": { + "architecture": { + "$ref": "#/components/schemas/Architecture" + }, + "author": { + "description": "Author of the image", + "maxLength": 256, + "type": "string" + }, + "built_at": { + "description": "When the image was built", + "format": "date-time", + "type": "string" + }, + "config": { + "$ref": "#/components/schemas/ImageConfig" + }, + "config_digest": { + "description": "Image config digest", + "maxLength": 256, + "type": "string" + }, + "distribution_digests": { + "description": "Distribution digests (manifest/index pairs)", + "items": { + "$ref": "#/components/schemas/DistributionDigest" + }, + "maxItems": 100, + "type": "array" + }, + "history": { + "description": "Image build history", + "items": { + "$ref": "#/components/schemas/History" + }, + "maxItems": 1000, + "type": "array" + }, + "image_tags": { + "description": "Distinct image tags across all discovery sources", + "items": { + "maxLength": 256, + "type": "string" + }, + "maxItems": 20, + "type": "array" + }, + "inferred_base_images": { + "description": "Inferred base images", + "items": { + "maxLength": 512, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "os": { + "$ref": "#/components/schemas/OperatingSystem" + }, + "os_features": { + "description": "OS features", + "items": { + "maxLength": 256, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "os_version": { + "description": "Operating system version", + "maxLength": 256, + "type": "string" + }, + "provenance_attestations": { + "description": "Provenance attestations describing how the image was built", + "items": { + "$ref": "#/components/schemas/ProvenanceAttestation" + }, + "maxItems": 100, + "type": "array" + }, + "registry": { + "description": "Container registry hostname", + "maxLength": 256, + "type": "string" + }, + "repository": { + "description": "Repository path, e.g. \"library/nginx\"", + "maxLength": 256, + "type": "string" + }, + "root_fs": { + "$ref": "#/components/schemas/RootFs" + }, + "size_bytes": { + "description": "Size of the image in bytes", + "format": "int64", + "type": "integer" + }, + "total_image_tags": { + "description": "Total count of distinct image tags across all discovery sources", + "minimum": 0, + "type": "integer" + }, + "variant": { + "description": "Variant of the CPU architecture", + "maxLength": 64, + "type": "string" + } + }, + "type": "object" + } + ] + }, "ContainerRegistryImportPolicyAttributes": { "additionalProperties": false, "properties": { @@ -6064,7 +8843,7 @@ }, "schedule_frequency_hours": { "description": "The frequency of the import policy in hours.", - "minimum": 12, + "minimum": 2, "type": "integer" } }, @@ -6075,14 +8854,24 @@ "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.", + "example": { + "image_url": "https://docker.io/example/image", + "tag": "version_0.0.0", + "type": "container" + }, "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": "#/components/schemas/ScmContext" + }, "tag": { - "pattern": "^[a-fA-F0-9]{64}$", + "description": "Tagged version of the container to scan.", "type": "string" }, "type": { @@ -6100,6 +8889,7 @@ "type": "object" }, "ContainerScanConfiguration": { + "description": "Scan configuration parameters for the Container scanner.", "type": "object" }, "Context": { @@ -6146,6 +8936,18 @@ ], "type": "object" }, + "CopyRuleExtensionRequestAttributes": { + "additionalProperties": false, + "properties": { + "copy_from": { + "$ref": "#/components/schemas/RuleExtensionCopyFrom" + } + }, + "required": [ + "copy_from" + ], + "type": "object" + }, "CoverageControlAttributes": { "example": { "category": "security", @@ -6198,7 +9000,8 @@ "discriminator": { "mapping": { "ai_bom_file_bundle": "#/components/schemas/FileBundleStoreData", - "ai_bom_scm_bundle": "#/components/schemas/SCMBundleStoreData" + "ai_bom_file_upload": "#/components/schemas/FileUploadApiData", + "ai_bom_scm_bundle": "#/components/schemas/ScmBundleStoreData" }, "propertyName": "type" }, @@ -6207,7 +9010,10 @@ "$ref": "#/components/schemas/FileBundleStoreData" }, { - "$ref": "#/components/schemas/SCMBundleStoreData" + "$ref": "#/components/schemas/ScmBundleStoreData" + }, + { + "$ref": "#/components/schemas/FileUploadApiData" } ] }, @@ -6231,12 +9037,132 @@ ], "type": "object" }, + "CreateAndUploadAiBomFileBundleAttributes": { + "properties": { + "bundle_id": { + "description": "The id of the bundle that has been uploaded by the user, sha256 hash", + "pattern": "^[0-9a-fA-F]{64}$", + "type": "string" + }, + "repo_name": { + "description": "The name of the repository", + "maxLength": 200, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "bundle_id", + "repo_name" + ], + "type": "object" + }, + "CreateAndUploadAiBomFileBundleData": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreateAndUploadAiBomFileBundleAttributes" + }, + "type": { + "enum": [ + "ai_bom_file_bundle" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + }, + "CreateAndUploadAiBomFileUploadAttributes": { + "properties": { + "repo_name": { + "description": "The name of the repository", + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "upload_revision_id": { + "description": "The id of the upload revision the has been created by the user", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "upload_revision_id", + "repo_name" + ], + "type": "object" + }, + "CreateAndUploadAiBomFileUploadData": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreateAndUploadAiBomFileUploadAttributes" + }, + "type": { + "enum": [ + "ai_bom_file_upload" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + }, + "CreateAndUploadAiBomRequestBody": { + "properties": { + "data": { + "$ref": "#/components/schemas/CreateAndUploadAiBomRequestData" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "CreateAndUploadAiBomRequestData": { + "discriminator": { + "mapping": { + "ai_bom_file_bundle": "#/components/schemas/CreateAndUploadAiBomFileBundleData", + "ai_bom_file_upload": "#/components/schemas/CreateAndUploadAiBomFileUploadData" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/CreateAndUploadAiBomFileBundleData" + }, + { + "$ref": "#/components/schemas/CreateAndUploadAiBomFileUploadData" + } + ] + }, "CreateAssignmentsPayload": { "properties": { + "contact_email": { + "description": "Custom contact email to display in email templates when customized_contact_details is true", + "format": "email", + "type": "string" + }, + "contact_name": { + "description": "Custom contact name to display in email templates when customized_contact_details is true", + "type": "string" + }, + "customized_contact_details": { + "default": false, + "description": "Flag to indicate if custom contact details should be used in email templates", + "type": "boolean" + }, "data": { + "description": "Array of assignment creation objects. Must contain at least one assignment.", "items": { "$ref": "#/components/schemas/AssignmentCreationResource" }, + "minItems": 1, "type": "array" }, "due_date": { @@ -6309,21 +9235,17 @@ ], "type": "object" }, - "CreateBrokerDeploymentRequest": { + "CreateBrokerContextRequest": { "additionalProperties": false, "properties": { "data": { "properties": { "attributes": { - "allOf": [ - { - "$ref": "#/components/schemas/BrokerDeploymentAttributes" - } - ] + "$ref": "#/components/schemas/BrokerContextCreateAttributes" }, "type": { "enum": [ - "broker_deployment" + "broker_context" ], "type": "string" } @@ -6340,6 +9262,18 @@ ], "type": "object" }, + "CreateBrokerDeploymentRequest": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/BrokerDeploymentCreateResource" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "CreateBulkMigrationRequest": { "additionalProperties": false, "properties": { @@ -6738,6 +9672,108 @@ ], "type": "object" }, + "CreateSastRuleExtensionRequestAttributes": { + "additionalProperties": false, + "properties": { + "configuration": { + "$ref": "#/components/schemas/SastRuleExtensionConfiguration" + }, + "description": { + "$ref": "#/components/schemas/RuleExtensionDescription" + }, + "kind": { + "$ref": "#/components/schemas/SastRuleExtensionKind" + }, + "signature": { + "$ref": "#/components/schemas/SastRuleExtensionSignature" + }, + "status": { + "$ref": "#/components/schemas/RuleExtensionStatus" + } + }, + "required": [ + "kind", + "signature", + "status", + "configuration" + ], + "type": "object" + }, + "CreateSearchRequestBody": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "filter": { + "$ref": "#/components/schemas/RsqlFilterString" + }, + "limit": { + "default": 10, + "description": "Number of results to return per page", + "maximum": 100, + "minimum": 10, + "type": "integer" + }, + "meta_count": { + "description": "Whether to include the total count of results in the response meta object.\nWhen `with` is provided, the count will be included in the response meta object.\nWhen `only` is provided, the count will be included in the response meta object and no data will be returned.\n", + "enum": [ + "with", + "only" + ], + "example": "with", + "type": "string" + }, + "sort": { + "description": "Comma-separated sort fields. Prefix with `-` for descending order.\n\n**Supported fields:**\n- `created_at` - Asset creation timestamp\n- `updated_at` - Asset last update timestamp\n- `type` - Asset type (container_images)\n- `class` - Asset class\n- `risk_score` - Asset risk score (max across project sources)\n- `issues` - Issue counts by severity (critical, high, medium, low)\n- `built_at` - Image build timestamp (container images only)\n- `last_scan` - Last scan timestamp\n", + "example": "-created_at", + "type": "string" + } + }, + "type": "object" + }, + "type": { + "enum": [ + "searches" + ], + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "CreateSecretsRuleExtensionAttributes": { + "additionalProperties": false, + "properties": { + "configuration": { + "$ref": "#/components/schemas/SecretsConfiguration" + }, + "description": { + "$ref": "#/components/schemas/RuleExtensionDescription" + }, + "kind": { + "$ref": "#/components/schemas/SecretsRegexKind" + }, + "signature": { + "$ref": "#/components/schemas/SecretsRegexSignature" + }, + "status": { + "$ref": "#/components/schemas/RuleExtensionStatus" + } + }, + "required": [ + "kind", + "signature", + "status", + "configuration" + ], + "type": "object" + }, "CreateTenantRoleRequestAttributes": { "additionalProperties": false, "properties": { @@ -6985,6 +10021,11 @@ "uniqueItems": true }, "Cwes": { + "description": "CWE identifiers (e.g. CWE-79). Up to 50 unique values.", + "example": [ + "CWE-79", + "CWE-89" + ], "items": { "pattern": "^CWE-\\d+$", "type": "string" @@ -6999,7 +10040,7 @@ "type": "string" }, "DeepcodeBundleSubject": { - "description": "Test subject representing source code uploaded to Snyk using DeepCode\nbundle APIs.", + "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).", @@ -7058,6 +10099,39 @@ ], "type": "object" }, + "DeleteOrgAssignmentsBulkRequest": { + "properties": { + "data": { + "description": "Array of assignment resource identifiers to delete. Must contain at least one assignment.", + "items": { + "additionalProperties": false, + "properties": { + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "lesson_assignment" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "DeleteProjectsFromCollectionRequest": { "additionalProperties": false, "properties": { @@ -7093,8 +10167,55 @@ ], "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": "#/components/schemas/DepGraphRef" + }, + "type": { + "enum": [ + "dep_graph" + ], + "type": "string" + } + }, + "required": [ + "type", + "dep_graph" + ], + "type": "object" + }, + "DepGraphRef": { + "additionalProperties": {}, + "properties": { + "graph": { + "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.Graph" + }, + "pkgManager": { + "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.PackageManager" + }, + "pkgs": { + "items": { + "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.Package" + }, + "type": "array" + }, + "schemaVersion": { + "type": "string" + } + }, + "required": [ + "schemaVersion", + "pkgManager", + "pkgs", + "graph" + ], + "type": "object", + "x-go-type": "json.RawMessage" + }, "DepGraphSubject": { - "description": "Test subject representing a Snyk dependency graph (a legacy SBOM format).", + "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": { "locator": { "allOf": [ @@ -7118,12 +10239,12 @@ "type": "object" }, "DepGraphSubjectCreate": { - "description": "Test subject representing a Snyk dependency graph (a legacy SBOM format).", + "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": "#/components/schemas/io.snyk.api.v1testdepgraph.request.DepGraph" + "$ref": "#/components/schemas/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." @@ -7355,6 +10476,24 @@ "type": "object" }, "DiffResource": { + "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.", + "example": { + "base": { + "file_patterns": [], + "integration_id": "00000000-0000-0000-0000-000000000000", + "ref": "main", + "repo_url": "https://github.com/example/repo", + "type": "scm" + }, + "compare": { + "file_patterns": [], + "integration_id": "00000000-0000-0000-0000-000000000000", + "ref": "feat/homepage", + "repo_url": "https://github.com/example/repo", + "type": "scm" + }, + "type": "diff" + }, "properties": { "base": { "$ref": "#/components/schemas/BaseResourceVariant" @@ -7377,6 +10516,24 @@ "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.", + "example": { + "base": { + "file_patterns": [], + "integration_id": "00000000-0000-0000-0000-000000000000", + "ref": "main", + "repo_url": "https://github.com/example/repo", + "type": "scm" + }, + "compare": { + "file_patterns": [], + "integration_id": "00000000-0000-0000-0000-000000000000", + "ref": "feat/homepage", + "repo_url": "https://github.com/example/repo", + "type": "scm" + }, + "type": "diff" + }, "properties": { "base": { "$ref": "#/components/schemas/BaseResourceVariantCreateItem" @@ -7468,6 +10625,55 @@ ], "type": "object" }, + "DirectVulnerabilitiesCounts": { + "additionalProperties": false, + "description": "Breakdown of direct vulnerabilities by Snyk severity level", + "properties": { + "critical": { + "description": "Number of critical severity vulnerabilities (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "high": { + "description": "Number of high severity vulnerabilities (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "low": { + "description": "Number of low severity vulnerabilities (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "medium": { + "description": "Number of medium severity vulnerabilities (\u003e= 0)", + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "critical", + "high", + "medium", + "low" + ], + "type": "object" + }, + "DistributionDigest": { + "description": "Distribution digest information for a container image", + "properties": { + "index_digest": { + "description": "Index digest", + "maxLength": 256, + "type": "string" + }, + "manifest_digest": { + "description": "Manifest digest", + "maxLength": 256, + "type": "string" + } + }, + "type": "object" + }, "DockerHubAttributes": { "properties": { "required": { @@ -7519,6 +10725,30 @@ ], "type": "object" }, + "DockerfileMetadata": { + "description": "Dockerfile metadata extracted from a BuildKit provenance attestation", + "properties": { + "dockerfile_contents": { + "description": "Base64-encoded contents of the Dockerfile", + "type": "string" + }, + "dockerfile_name": { + "description": "Name of the Dockerfile used for the build", + "maxLength": 256, + "type": "string" + } + }, + "type": "object" + }, + "DotnetSettings": { + "additionalProperties": false, + "properties": { + "nuget": { + "$ref": "#/components/schemas/NugetSettings" + } + }, + "type": "object" + }, "DryRunJobCreationResponseAttributes": { "description": "Attributes for a dry run job creation response", "properties": { @@ -7942,7 +11172,56 @@ "type": "string" }, "links": { - "$ref": "#/components/schemas/ErrorLink" + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" }, "meta": { "additionalProperties": true, @@ -8010,13 +11289,144 @@ } ], "items": { - "$ref": "#/components/schemas/Error" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ @@ -8070,7 +11480,46 @@ }, "properties": { "about": { - "$ref": "#/components/schemas/LinkProperty" + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] } }, "type": "object" @@ -8460,6 +11909,238 @@ ], "type": "object" }, + "FileUploadApiAttributes": { + "properties": { + "upload_revision_id": { + "description": "The id of the upload revision the has been created by the user", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "upload_revision_id" + ], + "type": "object" + }, + "FileUploadApiData": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/FileUploadApiAttributes" + }, + "type": { + "enum": [ + "ai_bom_file_upload" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + }, + "FilterDateRange": { + "properties": { + "from": { + "format": "date-time", + "type": "string" + }, + "to": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "FilterFieldAttributes": { + "additionalProperties": false, + "properties": { + "asset_types": { + "description": "List of asset types this field applies to", + "items": { + "enum": [ + "container_images", + "sboms", + "repositories" + ], + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The field name used in RSQL filters (e.g., \"class\", \"registry\")", + "type": "string" + }, + "type": { + "description": "Data type of the field (string, boolean, datetime, array, object)", + "enum": [ + "string", + "boolean", + "datetime", + "array", + "object" + ], + "type": "string" + } + }, + "required": [ + "name", + "type", + "asset_types" + ], + "type": "object" + }, + "FilterFieldData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/FilterFieldAttributes" + }, + "id": { + "description": "UUID identifier for the filter field", + "format": "uuid", + "type": "string" + }, + "relationships": { + "description": "Relationships for this filter field (only present for fields supporting autocomplete)", + "properties": { + "values": { + "properties": { + "links": { + "properties": { + "related": { + "description": "Relative path to get autocomplete values for this filter field", + "format": "uri-reference", + "type": "string" + } + }, + "required": [ + "related" + ], + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "The JSON:API resource type", + "enum": [ + "filter_fields" + ], + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + }, + "FilterFieldsResponse": { + "additionalProperties": false, + "properties": { + "data": { + "description": "List of available filter fields", + "items": { + "$ref": "#/components/schemas/FilterFieldData" + }, + "type": "array" + }, + "links": { + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + } + }, + "required": [ + "data", + "links" + ], + "type": "object" + }, + "FilterValueAttributes": { + "additionalProperties": false, + "properties": { + "key": { + "description": "For object-type filters (e.g., tags), the key name. Only present for object-type filter values.", + "type": "string" + }, + "value": { + "description": "The filter value. For simple filters, this is the value itself. For object-type filters (e.g., tags), this is the value associated with the key.", + "type": "string" + } + }, + "type": "object" + }, + "FilterValueData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/FilterValueAttributes" + }, + "id": { + "description": "UUID identifier for the filter value", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The JSON:API resource type", + "enum": [ + "filter_values" + ], + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + }, + "FilterValuesResponse": { + "additionalProperties": false, + "properties": { + "data": { + "description": "List of filter values", + "items": { + "$ref": "#/components/schemas/FilterValueData" + }, + "type": "array" + }, + "links": { + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + } + }, + "required": [ + "data", + "links" + ], + "type": "object" + }, "FindingAttributes": { "description": "FindingAttributes represent the attributes of a Finding resource.", "properties": { @@ -8468,6 +12149,14 @@ "description": "Did this finding cause the test outcome to fail?", "type": "boolean" }, + "component_key": { + "allOf": [ + { + "$ref": "#/components/schemas/String256" + } + ], + "description": "A test-scoped key referring to the component in which the Finding\noriginated.\n\nComponent keys are unique only within a Test." + }, "description": { "description": "A longer human-readable text description for this finding.", "type": "string" @@ -8503,7 +12192,7 @@ "type": "string" }, "locations": { - "description": "Locations in the Asset's contents where the finding may be found.", + "description": "Locations in the tested component's contents where the finding may be found.", "items": { "$ref": "#/components/schemas/FindingLocation" }, @@ -8555,19 +12244,8 @@ } ], "items": { - "description": "Problems are representative of the finding in other security domains and\nsystems with a well-known identifier.\n\nMore detailed attributes for the problem may be included, especially when\nthis information is not yet readily available in a relatable public API.\n\nProblems are defined in industry standard taxonomies such as:\n- MITRE's Common Weakness Enumeration (CWE)\n- Common Vulnerability Exposures (CVE)\n\nSnyk systems also define problems, such as:\n- Code SAST rules\n- VulnDB vulnerabilities\n- Software licenses", + "description": "Problems are representative of the finding in other security domains and\nsystems with a well-known identifier.\n\nMore detailed attributes for the problem may be included, especially when\nthis information is not yet readily available in a relatable public API.\n\nProblems are defined in industry standard taxonomies such as:\n- MITRE's Common Weakness Enumeration (CWE)\n- Common Vulnerability Exposures (CVE)\n\nSnyk systems also define problems, such as:\n- Code SAST rules\n- VulnDB vulnerabilities\n- Software licenses\n- Secret leaks", "discriminator": { - "mapping": { - "cve": "#/components/schemas/CveProblem", - "cwe": "#/components/schemas/CweProblem", - "ghsa": "#/components/schemas/GithubSecurityAdvisoryProblem", - "other": "#/components/schemas/OtherProblem", - "secret": "#/components/schemas/SecretsRuleProblem", - "snyk_cloud_rule": "#/components/schemas/SnykCloudRuleProblem", - "snyk_code_rule": "#/components/schemas/SnykCodeRuleProblem", - "snyk_license": "#/components/schemas/SnykLicenseProblem", - "snyk_vuln": "#/components/schemas/SnykVulnProblem" - }, "propertyName": "source" }, "oneOf": [ @@ -8810,6 +12488,14 @@ }, "type": "array" }, + "alternative_ids": { + "description": "This is the list of alternative IDs Snyk gives for a certain vulnerability.\nIt's usually present in older vulnerabilities, in which Snyk used to use a different identifier format.\ne.g a vuln with the ID \"npm:foo:bar\", will likely have an alternative ID of \"SNYK-JS-FOO-BAR\".", + "items": { + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, "created_at": { "description": "Timestamp indicating when the problem was orginally created.", "example": "2022-05-17T14:23:25Z", @@ -8930,21 +12616,22 @@ { "description": "Describe a software package ecosystem.", "discriminator": { - "mapping": { - "build": "#/components/schemas/snykvulndb.BuildPackageEcosystem", - "os": "#/components/schemas/snykvulndb.OsPackageEcosystem", - "other": "#/components/schemas/snykvulndb.OtherPackageEcosystem" - }, "propertyName": "type" }, "oneOf": [ { "description": "Software packages supporting the application build process.\n\nThese are generally development libraries, which may be distributed in source\nor compiled form, used during the application build process by various\nprogramming language toolchains.\n\nExamples include, but are not limited to: Javascript NPM, Java Maven, Python pip, etc.", "properties": { + "client": { + "description": "Ecosystem client is the tool the consumer used to manage the dependencies.\nIn managed ecosystems, this is commonly refered to as the package manager,\nwhile in the case of C++, this would be \"unmanaged\".", + "type": "string" + }, "language": { + "deprecated": true, "type": "string" }, "package_manager": { + "deprecated": true, "type": "string" }, "type": { @@ -9117,6 +12804,11 @@ }, "type": "array" }, + "is_disputed": { + "default": false, + "description": "Indicates if the vulnerability is formally disputed.\nA vulnerability's claim (e.g., that it's a security flaw, or the scope/impact) is\n**disputed** when one party, often the vendor or a security professional, formally\nchallenges the assertion.\nMost cybersecurity public listings, such as CVE, have a defined process\nallowing vendors or researchers to officially challenge the validity\nof a reported issue, leading to this 'DISPUTED' status being formally annotated.", + "type": "boolean" + }, "is_fixable": { "default": false, "description": "Is there a fixed version published to the relevant package manager\nrepository- i.e., a newer version without this specific vulnerability", @@ -9127,6 +12819,11 @@ "description": "Indicate if the vulnerability is known to mark a malicious package.", "type": "boolean" }, + "is_proprietary": { + "default": false, + "description": "This field indicates if the vulnerability was first published in the Snyk DB.\nThis happens when either of the following is true:\n- Snyk was responsilbe for coordinating the disclosure\n- Snyk researchers discovered the vulnerability/malicious package\n- Snyk gave the first or best indication about the vulnerability based on unofficial sources.\nThe only exceptions are when:\n- The vulnerability is a Linux container\n- The vulnerable package is written in C/C++ and not hosted on conan center\n- The vulnerable package is a `webjar`", + "type": "boolean" + }, "is_social_media_trending": { "default": false, "description": "This boolean field is true when increased activity is detected related to\nthis vulnerability. The \"trending\" determination is based on social media\nactivity, using Snyk models which are tuned to detect an increased chance\nof near-future exploitation.", @@ -9137,10 +12834,18 @@ "format": "date-time", "type": "string" }, + "package_full_name": { + "description": "The full name of the vulnerable software package.\nIt's achieved by combining the packageName and packageNamespace\nwith the ecosystem specific delimiter.", + "type": "string" + }, "package_name": { "description": "Package name.", "type": "string" }, + "package_namespace": { + "description": "Vulnerable software package namespace, if applicable.", + "type": "string" + }, "package_popularity_rank": { "description": "Percentile rank indicating the package's prevalence across Snyk-monitored projects.\nA higher rank signifies the package is used in a larger percentage of projects.", "maximum": 100, @@ -9204,6 +12909,10 @@ "description": "The Snyk curated or recommended vulnerability severity for the problem.", "example": "critical" }, + "severity_based_on": { + "description": "Indicates how the vulnerability severity was determined.", + "type": "string" + }, "source": { "enum": [ "snyk_vuln" @@ -9317,21 +13026,22 @@ { "description": "Describe a software package ecosystem.", "discriminator": { - "mapping": { - "build": "#/components/schemas/snykvulndb.BuildPackageEcosystem", - "os": "#/components/schemas/snykvulndb.OsPackageEcosystem", - "other": "#/components/schemas/snykvulndb.OtherPackageEcosystem" - }, "propertyName": "type" }, "oneOf": [ { "description": "Software packages supporting the application build process.\n\nThese are generally development libraries, which may be distributed in source\nor compiled form, used during the application build process by various\nprogramming language toolchains.\n\nExamples include, but are not limited to: Javascript NPM, Java Maven, Python pip, etc.", "properties": { + "client": { + "description": "Ecosystem client is the tool the consumer used to manage the dependencies.\nIn managed ecosystems, this is commonly refered to as the package manager,\nwhile in the case of C++, this would be \"unmanaged\".", + "type": "string" + }, "language": { + "deprecated": true, "type": "string" }, "package_manager": { + "deprecated": true, "type": "string" }, "type": { @@ -9435,10 +13145,18 @@ "example": "MPL-2.0", "type": "string" }, + "package_full_name": { + "description": "The full name of the vulnerable software package.\nIt's achieved by combining the packageName and packageNamespace\nwith the ecosystem specific delimiter.", + "type": "string" + }, "package_name": { "description": "Package name.", "type": "string" }, + "package_namespace": { + "description": "Vulnerable software package namespace, if applicable.", + "type": "string" + }, "package_version": { "description": "Package version.", "type": "string" @@ -9544,12 +13262,14 @@ "type": "array" }, "help": { + "description": "Assistance on resolving the finding.", "type": "string" }, "id": { "type": "string" }, "name": { + "description": "Name for the kind of finding uncovered.", "type": "string" }, "precision": { @@ -9558,18 +13278,24 @@ "type": "string" }, "severity": { - "description": "Indicate the severity of a finding discovered by a Test.", - "enum": [ - "critical", - "high", - "medium", - "low", - "none", - "other" + "allOf": [ + { + "description": "Indicate the severity of a finding discovered by a Test.", + "enum": [ + "critical", + "high", + "medium", + "low", + "none", + "other" + ], + "type": "string" + } ], - "type": "string" + "description": "Severity level of the finding." }, "short_description": { + "description": "Short description of the found Secret's type.", "type": "string" }, "source": { @@ -9882,9 +13608,36 @@ "rejected", "pending", "cancelled", - "not-required" + "not-required", + "unknown" ], "type": "string" + }, + "reviewed_at": { + "format": "date-time", + "type": "string" + }, + "reviewed_by": { + "properties": { + "email": { + "description": "Email of the reviewer", + "type": "string" + }, + "id": { + "description": "User ID of the reviewer", + "format": "uuid", + "type": "string" + }, + "name": { + "description": "Name of the reviewer", + "type": "string" + } + }, + "required": [ + "id", + "name" + ], + "type": "object" } }, "required": [ @@ -10055,9 +13808,36 @@ "rejected", "pending", "cancelled", - "not-required" + "not-required", + "unknown" ], "type": "string" + }, + "reviewed_at": { + "format": "date-time", + "type": "string" + }, + "reviewed_by": { + "properties": { + "email": { + "description": "Email of the reviewer", + "type": "string" + }, + "id": { + "description": "User ID of the reviewer", + "format": "uuid", + "type": "string" + }, + "name": { + "description": "Name of the reviewer", + "type": "string" + } + }, + "required": [ + "id", + "name" + ], + "type": "object" } }, "required": [ @@ -10078,10 +13858,6 @@ } ], "discriminator": { - "mapping": { - "ignore": "#/components/schemas/Ignore", - "severity-change": "#/components/schemas/SeverityChange" - }, "propertyName": "action_type" } }, @@ -10141,6 +13917,29 @@ ], "type": "object" }, + "project": { + "description": "Snyk Project in which the Finding was discovered", + "properties": { + "data": { + "properties": { + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "pattern": "^[a-z][a-z0-9]*(_[a-z][a-z0-9]*)*$", + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + } + }, + "type": "object" + }, "test": { "description": "Test in which this finding was discovered.", "properties": { @@ -10197,8 +13996,7 @@ "discriminator": { "mapping": { "other": "#/components/schemas/OtherLocation", - "package": "#/components/schemas/PackageLocation", - "source": "#/components/schemas/SourceLocation" + "package": "#/components/schemas/PackageLocation" }, "propertyName": "type" }, @@ -10302,7 +14100,8 @@ "dast", "other", "config", - "secret" + "secret", + "secrets" ], "type": "string" }, @@ -10569,6 +14368,24 @@ ], "type": "object" }, + "GetBrokerContextResponse": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/BrokerContextResource" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "GetBrokerDeploymentResponse": { "additionalProperties": false, "properties": { @@ -10917,7 +14734,7 @@ "type": "object" }, "GitUrlCoordinatesSubject": { - "description": "Test subject representing a source tree located in a Git repository that\nhas a Snyk SCM integration.", + "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.", @@ -11054,6 +14871,27 @@ ], "type": "object" }, + "GoSettings": { + "additionalProperties": false, + "properties": { + "gomodules": { + "$ref": "#/components/schemas/GolangModulesSettings" + } + }, + "type": "object" + }, + "GolangModulesSettings": { + "additionalProperties": false, + "properties": { + "full_source_code_analysis": { + "type": "boolean" + } + }, + "required": [ + "full_source_code_analysis" + ], + "type": "object" + }, "GoogleArtifactCrAttributes": { "properties": { "required": { @@ -11232,6 +15070,107 @@ ], "type": "object" }, + "GroupFieldAttributes": { + "additionalProperties": false, + "properties": { + "asset_types": { + "description": "List of asset types this field applies to", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The field name used for grouping (e.g., \"class\", \"registry\")", + "type": "string" + } + }, + "required": [ + "name", + "asset_types" + ], + "type": "object" + }, + "GroupFieldData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/GroupFieldAttributes" + }, + "id": { + "description": "UUID identifier for the group field", + "format": "uuid", + "type": "string" + }, + "relationships": { + "description": "Relationships for this group field", + "properties": { + "values": { + "properties": { + "links": { + "properties": { + "related": { + "description": "Relative path to get aggregated values for this group field", + "format": "uri-reference", + "type": "string" + } + }, + "required": [ + "related" + ], + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "The JSON:API resource type", + "enum": [ + "group_fields" + ], + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + }, + "GroupFieldsResponse": { + "additionalProperties": false, + "properties": { + "data": { + "description": "List of available group fields", + "items": { + "$ref": "#/components/schemas/GroupFieldData" + }, + "type": "array" + }, + "links": { + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + } + }, + "required": [ + "data", + "links" + ], + "type": "object" + }, "GroupFilters": { "allOf": [ { @@ -11239,12 +15178,71 @@ }, { "properties": { + "effective_severity": { + "items": { + "enum": [ + "CRITICAL", + "HIGH", + "MEDIUM", + "LOW" + ], + "type": "string" + }, + "type": "array" + }, + "event": { + "$ref": "#/components/schemas/FilterDateRange" + }, + "event_type": { + "items": { + "enum": [ + "new", + "persisting", + "prevented" + ], + "type": "string" + }, + "type": "array" + }, + "git_branch": { + "items": { + "type": "string" + }, + "type": "array" + }, + "git_repo": { + "items": { + "type": "string" + }, + "type": "array" + }, + "is_suppressed": { + "type": "boolean" + }, "orgs": { "items": { "format": "uuid", "type": "string" }, "type": "array" + }, + "sdlc_stage": { + "items": { + "enum": [ + "IDE", + "CLI", + "MCP", + "OTHER" + ], + "type": "string" + }, + "type": "array" + }, + "test_user_email": { + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -12532,6 +16530,177 @@ ], "type": "string" }, + "GroupValueAttributes": { + "additionalProperties": false, + "properties": { + "value": { + "description": "The grouped value", + "type": "string" + } + }, + "required": [ + "value" + ], + "type": "object" + }, + "GroupValueData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/GroupValueAttributes" + }, + "id": { + "description": "UUID identifier for the group value", + "format": "uuid", + "type": "string" + }, + "meta": { + "$ref": "#/components/schemas/GroupValueMeta" + }, + "type": { + "description": "The JSON:API resource type", + "enum": [ + "group_values" + ], + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, + "GroupValueIssuesAggregation": { + "additionalProperties": false, + "description": "Aggregated issue counts from discovery sources across all assets in this group.\nCounts are summed from all project-type discovery sources.\n", + "properties": { + "critical": { + "description": "Total count of critical severity issues", + "minimum": 0, + "type": "integer" + }, + "high": { + "description": "Total count of high severity issues", + "minimum": 0, + "type": "integer" + }, + "low": { + "description": "Total count of low severity issues", + "minimum": 0, + "type": "integer" + }, + "medium": { + "description": "Total count of medium severity issues", + "minimum": 0, + "type": "integer" + }, + "total": { + "description": "Sum of all issue counts (critical + high + medium + low)", + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + }, + "GroupValueMeta": { + "additionalProperties": false, + "description": "Computed aggregations across all assets within this group value.\nFields are only present when explicitly requested via the `meta_fields` query parameter.\nIf `meta_fields` is not specified, the meta object is omitted from the response.\n", + "properties": { + "built_at": { + "description": "Aggregated container image build timestamp across all assets in this group.\nThe aggregation function is controlled by the `aggregate[built_at]` parameter (default: last).\nNull if no assets have a built_at value.\n", + "format": "date-time", + "type": "string" + }, + "count": { + "description": "Number of assets with this value.", + "minimum": 0, + "type": "integer" + }, + "created_at": { + "description": "Aggregated created_at timestamp across assets in this group.\nThe aggregation function is controlled by the `aggregate[created_at]` parameter (default: last).\nNull if no assets have a created_at value.\n", + "format": "date-time", + "type": "string" + }, + "issues": { + "$ref": "#/components/schemas/GroupValueIssuesAggregation" + }, + "labels": { + "description": "Unique labels across all assets in this group.\nLimited to the first 1000 unique labels (alphabetically sorted).\nEmpty array if no assets have labels.\n", + "items": { + "type": "string" + }, + "maxItems": 1000, + "type": "array" + }, + "last_seen_at": { + "description": "Aggregated last_seen_at timestamp across all assets in this group.\nThe aggregation function is controlled by the `aggregate[last_seen_at]` parameter (default: last).\nNull if no assets have a last_seen_at value.\n", + "format": "date-time", + "type": "string" + }, + "risk_score": { + "description": "Aggregated risk_score from discovery sources across all assets in this group.\nThe aggregation function is controlled by the `aggregate[risk_score]` parameter (default: last).\nDerived from project-type discovery sources. Null if no assets have\ndiscovery sources with risk scores.\n", + "minimum": 0, + "type": "integer" + }, + "tags": { + "description": "Unique tags across all assets in this group.\nLimited to the first 1000 unique tags (alphabetically sorted).\nEmpty array if no assets have tags.\n", + "items": { + "properties": { + "key": { + "description": "The tag key", + "type": "string" + }, + "value": { + "description": "The tag value", + "type": "string" + } + }, + "type": "object" + }, + "maxItems": 1000, + "type": "array" + }, + "updated_at": { + "description": "Aggregated updated_at timestamp across all assets in this group.\nThe aggregation function is controlled by the `aggregate[updated_at]` parameter (default: last).\n", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "GroupValuesResponse": { + "additionalProperties": false, + "properties": { + "data": { + "description": "List of group values with their aggregated metadata", + "items": { + "$ref": "#/components/schemas/GroupValueData" + }, + "type": "array" + }, + "links": { + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + } + }, + "required": [ + "data", + "links" + ], + "type": "object" + }, "HarborCrAttributes": { "properties": { "required": { @@ -12583,7 +16752,43 @@ ], "type": "object" }, + "History": { + "description": "A single entry in the container image build history", + "properties": { + "author": { + "description": "Author of the layer", + "maxLength": 128, + "nullable": true, + "type": "string" + }, + "comment": { + "description": "Comment for the layer", + "maxLength": 4096, + "nullable": true, + "type": "string" + }, + "created_at": { + "description": "When the layer was created", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "created_by": { + "description": "Command that created the layer", + "maxLength": 4096, + "nullable": true, + "type": "string" + }, + "empty_layer": { + "description": "Whether this is an empty layer (metadata-only)", + "nullable": true, + "type": "boolean" + } + }, + "type": "object" + }, "IacScanConfiguration": { + "description": "Scan configuration parameters for the IAC scanner.", "type": "object" }, "Id": { @@ -12658,12 +16863,146 @@ ], "type": "object" }, + "ImageConfig": { + "description": "Runtime configuration for the container (OCI image config).\nContains entrypoint, environment, exposed ports, volumes, labels, etc.\n", + "properties": { + "args_escaped": { + "description": "Whether args are escaped (Windows)", + "nullable": true, + "type": "boolean" + }, + "cmd": { + "description": "Command to run", + "items": { + "maxLength": 1024, + "type": "string" + }, + "maxItems": 500, + "nullable": true, + "type": "array" + }, + "entry_point": { + "description": "Entry point command", + "items": { + "maxLength": 1024, + "type": "string" + }, + "maxItems": 500, + "nullable": true, + "type": "array" + }, + "env": { + "description": "Environment variables", + "items": { + "maxLength": 1024, + "type": "string" + }, + "maxItems": 500, + "nullable": true, + "type": "array" + }, + "exposed_ports": { + "description": "Exposed ports in format \"port/protocol\" (e.g., \"8080/tcp\", \"53/udp\").\nPort is 0-65535, protocol is tcp or udp.\n", + "items": { + "maxLength": 64, + "pattern": "^\\d{1,5}/(tcp|udp)$", + "type": "string" + }, + "maxItems": 500, + "nullable": true, + "type": "array" + }, + "labels": { + "additionalProperties": { + "maxLength": 1024, + "type": "string" + }, + "description": "Key-value labels from the image configuration", + "type": "object" + }, + "stop_signal": { + "description": "Signal to stop the container", + "maxLength": 128, + "nullable": true, + "type": "string" + }, + "user": { + "description": "User that runs the container", + "maxLength": 1024, + "nullable": true, + "type": "string" + }, + "volumes": { + "description": "Volume mount points", + "items": { + "maxLength": 1024, + "type": "string" + }, + "maxItems": 500, + "nullable": true, + "type": "array" + }, + "working_dir": { + "description": "Working directory", + "maxLength": 1024, + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, "ImageDigest": { "example": "sha256:2bd864580926b790a22c8b96fd74496fe87b3c59c0774fe144bab2788e78e676", "format": "uri", "pattern": "^sha256(:|%3A)[a-f0-9]{64}$", "type": "string" }, + "ImageInfo": { + "description": "Container image with vulnerability summary", + "properties": { + "issues_by_severity": { + "description": "Issue counts by severity", + "properties": { + "critical": { + "type": "integer" + }, + "high": { + "type": "integer" + }, + "low": { + "type": "integer" + }, + "medium": { + "type": "integer" + } + }, + "type": "object" + }, + "name": { + "description": "Full image name", + "type": "string" + }, + "repo": { + "description": "Image repository", + "type": "string" + }, + "tag": { + "description": "Image tag", + "type": "string" + }, + "total_issues": { + "description": "Total number of issues across all severities", + "type": "integer" + } + }, + "required": [ + "name", + "repo", + "tag", + "total_issues" + ], + "type": "object" + }, "ImageName": { "example": "gcr.io/snyk/redis:5", "pattern": "^((?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:(?:\\.(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))+)?(?::[0-9]+)?\\/)?[a-z0-9]+(?:(?:(?:[._]|__|[-]*)[a-z0-9]+)+)?(?:(?:\\/[a-z0-9]+(?:(?:(?:[._]|__|[-]*)[a-z0-9]+)+)?)+)?)(?::([\\w][\\w.-]{0,127}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][A-Fa-f0-9]{32,}))?$", @@ -12730,29 +17069,56 @@ "type": "string" }, "InlineContent": { - "properties": { - "dep_graph": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.DepGraph" - }, - "type": { - "enum": [ - "dep_graph" - ], - "type": "string" + "allOf": [ + { + "$ref": "#/components/schemas/DepGraphContent" } - }, - "required": [ - "type", - "dep_graph" ], + "description": "Content formats accepted inline for testing.", "type": "object" }, "InlineResource": { + "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", + "example": { + "content": { + "dep_graph": { + "graph": { + "nodes": [ + { + "deps": [], + "nodeId": "root-node", + "pkgId": "snyk@1.0.0-monorepo" + } + ], + "rootNodeId": "root-node" + }, + "pkgManager": { + "name": "npm" + }, + "pkgs": [ + { + "id": "snyk@1.0.0-monorepo", + "info": { + "name": "snyk", + "version": "1.0.0-monorepo" + } + } + ], + "schemaVersion": "1.3.0" + }, + "type": "dep_graph" + }, + "name": "dep_graph.json", + "type": "inline" + }, "properties": { "name": { "maxLength": 256, "type": "string" }, + "scm_context": { + "$ref": "#/components/schemas/ScmContext" + }, "type": { "enum": [ "inline" @@ -12767,14 +17133,55 @@ "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", + "example": { + "content": { + "dep_graph": { + "graph": { + "nodes": [ + { + "deps": [], + "nodeId": "root-node", + "pkgId": "snyk@1.0.0-monorepo" + } + ], + "rootNodeId": "root-node" + }, + "pkgManager": { + "name": "npm" + }, + "pkgs": [ + { + "id": "snyk@1.0.0-monorepo", + "info": { + "name": "snyk", + "version": "1.0.0-monorepo" + } + } + ], + "schemaVersion": "1.3.0" + }, + "type": "dep_graph" + }, + "name": "dep_graph.json", + "type": "inline" + }, "properties": { "content": { - "$ref": "#/components/schemas/InlineContent" + "allOf": [ + { + "$ref": "#/components/schemas/InlineContent" + } + ], + "description": "File contents to be tested." }, "name": { "maxLength": 256, "type": "string" }, + "scm_context": { + "$ref": "#/components/schemas/ScmContext" + }, "type": { "enum": [ "inline" @@ -12795,6 +17202,12 @@ "format": "date-time", "type": "string" }, + "IntegrationId": { + "description": "Container Registry Integration ID", + "example": "365764ee-8a87-491a-9c9f-ad816f1238df", + "format": "uuid", + "type": "string" + }, "IntegrationRelationship": { "additionalProperties": false, "properties": { @@ -12935,6 +17348,101 @@ "description": "Where the issue originated, specific to issue type. Details on what\ncode, package, etc introduced the issue. An issue may be caused by\nmore than one coordinate.\n", "items": { "properties": { + "code_flows": { + "description": "The data flows in an application which may trigger a vulnerability.\nOnly populated on Code issues when include_code_flows=true and data flows\nin the issues API are enabled for the tenant.\n", + "items": { + "description": "The flow of data from source to sink which can trigger a SAST vulnerability.\n", + "properties": { + "thread_flows": { + "items": { + "description": "A thread of execution data flows through.\n", + "properties": { + "locations": { + "items": { + "description": "One step of the data flow.\n", + "properties": { + "file": { + "description": "A path to the file containing this issue, relative to the root of the project target,\nformatted using POSIX separators.\n", + "maximum": 2048, + "minimum": 1, + "type": "string" + }, + "region": { + "properties": { + "end": { + "properties": { + "column": { + "minimum": 0, + "type": "integer" + }, + "line": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "line", + "column" + ], + "type": "object" + }, + "start": { + "properties": { + "column": { + "minimum": 0, + "type": "integer" + }, + "line": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "line", + "column" + ], + "type": "object" + } + }, + "required": [ + "start", + "end" + ], + "type": "object" + } + }, + "required": [ + "file", + "region" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "locations" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "thread_flows" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "code_flows_omitted": { + "default": false, + "description": "Indicates if a Code issue contains a code flow that exceeded the 20 KB\n(20,480 byte) serialization limit and was omitted from the response.\nWhen true, code_flows is omitted from the response.\n", + "type": "boolean" + }, "created_at": { "description": "The time when this coordinate was created.", "format": "date-time", @@ -12999,8 +17507,8 @@ "type": "string" }, "description": { - "description": "A markdown-formatted optional description of this remedy. Links are not permitted.", - "maxLength": 4096, + "description": "A markdown-formatted optional description of this remedy.", + "maxLength": 20480, "minLength": 1, "type": "string" }, @@ -13009,7 +17517,19 @@ "properties": { "data": { "additionalProperties": true, - "description": "Metadata information related to apply a remedy. Limited in size to 100Kb when JSON serialized.", + "description": "Metadata information related to apply a remedy. Limited in size to 100Kb when JSON serialized.\n\nFor open source issues, when schema_version is `package_vulnerability/v0`,\ndata will include `semver_vulnerable` (an array representing the range of vulnerable versions) and `fixed_in` (an array representing fixed versions).\n", + "example": { + "fixed_in": [ + "5.7.4", + "6.4.1", + "7.1.1" + ], + "semver_vulnerable": [ + "\u003e=5.5.0 \u003c5.7.4", + "\u003e=6.0.0 \u003c6.4.1", + "\u003e=7.0.0 \u003c7.1.1" + ] + }, "type": "object" }, "schema_version": { @@ -13325,7 +17845,7 @@ "description": { "description": "A markdown-formatted optional description of this issue. Links are not permitted.", "example": "Affected versions of this package are vulnerable to Prototype Pollution.\nThe utilities function allow modification of the `Object` prototype.\nIf an attacker can control part of the structure passed to this function,\nthey could add or modify an existing property.\n", - "maxLength": 4096, + "maxLength": 20480, "minLength": 1, "type": "string" }, @@ -13461,12 +17981,41 @@ ], "type": "object" }, - "IssueIds": { - "items": { - "example": "SNYK-JS-YARGSPARSER-560381", - "type": "string" + "IssueCounts": { + "description": "Issue counts by severity", + "properties": { + "critical": { + "description": "Count of critical severity issues", + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "high": { + "description": "Count of high severity issues", + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "low": { + "description": "Count of low severity issues", + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "medium": { + "description": "Count of medium severity issues", + "format": "int32", + "minimum": 0, + "type": "integer" + } }, - "type": "array" + "required": [ + "critical", + "high", + "medium", + "low" + ], + "type": "object" }, "IssueRelationships": { "additionalProperties": false, @@ -13699,6 +18248,30 @@ }, "type": "object" }, + "JavaSettings": { + "additionalProperties": false, + "properties": { + "maven": { + "$ref": "#/components/schemas/MavenSettings" + } + }, + "type": "object" + }, + "JavascriptSettings": { + "additionalProperties": false, + "properties": { + "npm": { + "$ref": "#/components/schemas/NodeSettings" + }, + "pnpm": { + "$ref": "#/components/schemas/NodeSettings" + }, + "yarn": { + "$ref": "#/components/schemas/NodeSettings" + } + }, + "type": "object" + }, "Jira": { "properties": { "jira_hostname": { @@ -13845,6 +18418,197 @@ ], "type": "object" }, + "JsonApiLinks": { + "description": "Links for relationship objects within a resource", + "properties": { + "related": { + "description": "Link to the related resource(s)", + "format": "uri", + "type": "string" + }, + "self": { + "description": "Link to the relationship itself", + "format": "uri", + "type": "string" + } + }, + "type": "object" + }, + "JsonApiVersion": { + "properties": { + "version": { + "description": "JSON:API specification version", + "example": "1.0", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + }, + "LabelsReplace": { + "description": "Full replacement of all labels on the asset.\nAll existing labels will be removed and replaced with the provided labels.\n", + "items": { + "maxLength": 40, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_/:?#@\u0026=+%~-]+$", + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "LabelsUpdate": { + "additionalProperties": false, + "description": "Updates the asset's labels by adding or removing label values.\nAt least one of 'add' or 'remove' must be provided.\n", + "minProperties": 1, + "properties": { + "add": { + "description": "Labels to add to the asset.\nLabels must be 1-40 characters and contain only alphanumeric characters and _/:?#@\u0026=+%~- symbols.\n", + "items": { + "maxLength": 40, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_/:?#@\u0026=+%~-]+$", + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "remove": { + "description": "Labels to remove from the asset.\nLabels must be 1-40 characters and contain only alphanumeric characters and _/:?#@\u0026=+%~- symbols\n", + "items": { + "maxLength": 40, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_/:?#@\u0026=+%~-]+$", + "type": "string" + }, + "maxItems": 50, + "type": "array" + } + }, + "type": "object" + }, + "LanguageSettings": { + "additionalProperties": false, + "properties": { + "package_managers": { + "oneOf": [ + { + "$ref": "#/components/schemas/JavascriptSettings" + }, + { + "$ref": "#/components/schemas/PythonSettings" + }, + { + "$ref": "#/components/schemas/DotnetSettings" + }, + { + "$ref": "#/components/schemas/PhpSettings" + }, + { + "$ref": "#/components/schemas/GoSettings" + }, + { + "$ref": "#/components/schemas/JavaSettings" + } + ] + } + }, + "required": [ + "package_managers" + ], + "type": "object" + }, + "LanguagesSettings": { + "additionalProperties": false, + "properties": { + "languages": { + "additionalProperties": false, + "properties": { + "dotnet": { + "$ref": "#/components/schemas/DotnetSettings" + }, + "golang": { + "$ref": "#/components/schemas/GoSettings" + }, + "java": { + "$ref": "#/components/schemas/JavaSettings" + }, + "javascript": { + "$ref": "#/components/schemas/JavascriptSettings" + }, + "php": { + "$ref": "#/components/schemas/PhpSettings" + }, + "python": { + "$ref": "#/components/schemas/PythonSettings" + } + }, + "required": [ + "javascript", + "python", + "dotnet", + "php", + "golang", + "java" + ], + "type": "object" + } + }, + "required": [ + "languages" + ], + "type": "object" + }, + "LanguagesSettingsResponse": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/LanguagesSettings" + }, + "id": { + "description": "The organization's public ID.", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "languages_settings" + ], + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, + "LanguagesSettingsUpdateRequest": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/LanguageSettings" + }, + "id": { + "description": "The organization's public ID.", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "language_settings" + ], + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, "LatestDependencyTotal": { "additionalProperties": false, "properties": { @@ -14010,6 +18774,28 @@ } ] }, + "LessonEcosystem": { + "description": "Lesson language or platform. `all` skips ecosystem filtering.\n`npm` is treated as `javascript`.\n", + "enum": [ + "all", + "general", + "java", + "javascript", + "python", + "golang", + "php", + "cpp", + "csharp", + "kubernetes", + "docker", + "npm", + "aiml", + "rust", + "ruby", + "swift" + ], + "type": "string" + }, "LinkProperty": { "example": "https://example.com/api/resource", "oneOf": [ @@ -14030,7 +18816,19 @@ "type": "string" }, "meta": { - "$ref": "#/components/schemas/Meta" + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" } }, "required": [ @@ -14106,6 +18904,27 @@ ], "type": "object" }, + "ListBrokerContextsResponse": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/BrokerContextResource" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "ListBrokerDeploymentsResponse": { "additionalProperties": false, "properties": { @@ -14148,6 +18967,47 @@ ], "type": "object" }, + "ListOrgsInGroupMeta": { + "additionalProperties": false, + "description": "Additional information about the list of organizations. Only populated when `expand=count` is supplied as a query parameter.", + "properties": { + "total_count": { + "description": "The total number of organizations in the group, ignoring any filters applied to the original query. Excludes soft-deleted organizations.", + "example": 42, + "format": "int64", + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total_count" + ], + "type": "object" + }, + "ListRepositoryAliasesResponse": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/RepositoryAliasesData" + }, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + "links": { + "$ref": "#/components/schemas/PaginationLinks" + } + }, + "type": "object" + }, "ListTenantMembershipResponseData": { "additionalProperties": false, "items": { @@ -14229,9 +19089,9 @@ "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.", + "description": "Local file paths. Limited to 256 characters.", "items": { - "type": "string" + "$ref": "#/components/schemas/String256" }, "minItems": 1, "type": "array" @@ -14293,6 +19153,75 @@ ], "type": "object" }, + "MaintenanceDetails": { + "additionalProperties": false, + "description": "Maintenance health signals for the package as a whole, based on repository-level activity. These signals reflect the overall project status. They do not represent the maintenance state of specific versions or version lines.", + "properties": { + "description": { + "description": "Human-readable explanation of the maintenance rating", + "type": "string" + }, + "first_release_published_at": { + "description": "Timestamp of the first release", + "format": "date-time", + "type": "string" + }, + "forks_count": { + "description": "Number of repository forks (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "is_archived": { + "description": "Whether the source repository is archived. This is a repository-level signal. It does not represent the maintenance state of specific versions or version lines.", + "type": "boolean" + }, + "is_forked": { + "description": "Whether the repository is a fork", + "type": "boolean" + }, + "latest_release_number": { + "description": "Latest release version string", + "type": "string" + }, + "latest_release_published_at": { + "description": "Timestamp of the latest release", + "format": "date-time", + "type": "string" + }, + "lifecycle": { + "description": "Package-level lifecycle status as reported by the registry. Reflects the overall package state. It does not represent the maintenance state of specific versions or version lines.", + "enum": [ + "active", + "archived", + "deprecated", + "removed", + "unpublished" + ], + "type": "string" + }, + "rating": { + "description": "Package-level maintenance health, reflecting how actively the package repository is being developed and updated. This applies to the project as a whole. It does not represent the maintenance state of specific versions or version lines.", + "enum": [ + "Healthy", + "Sustainable", + "Inactive" + ], + "type": "string" + }, + "total_versions_count": { + "description": "Total number of versions published (\u003e= 0)", + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "is_archived", + "is_forked", + "total_versions_count", + "forks_count" + ], + "type": "object" + }, "ManagedPolicyRef": { "description": "Reference to a managed policy.", "properties": { @@ -14338,6 +19267,28 @@ }, "type": "object" }, + "MavenSettings": { + "additionalProperties": false, + "properties": { + "mirrors": { + "items": { + "$ref": "#/components/schemas/MirrorRepository" + }, + "type": "array" + }, + "repositories": { + "items": { + "$ref": "#/components/schemas/PackageRepository" + }, + "type": "array" + } + }, + "required": [ + "mirrors", + "repositories" + ], + "type": "object" + }, "MemberRoleRelationship": { "additionalProperties": false, "nullable": true, @@ -14433,6 +19384,24 @@ }, "type": "object" }, + "MirrorRepository": { + "allOf": [ + { + "$ref": "#/components/schemas/PackageRepository" + }, + { + "properties": { + "mirror_of": { + "type": "string" + } + }, + "required": [ + "mirror_of" + ], + "type": "object" + } + ] + }, "NexusAttributes": { "properties": { "required": { @@ -14517,6 +19486,48 @@ ], "type": "object" }, + "NodePackageRegistry": { + "additionalProperties": true, + "allOf": [ + { + "$ref": "#/components/schemas/PackageRepository" + }, + { + "properties": { + "scope": { + "type": "string" + } + }, + "type": "object" + } + ] + }, + "NodeSettings": { + "additionalProperties": true, + "properties": { + "exclude_lockfile_in_pr": { + "type": "boolean" + }, + "include_dev_dependencies": { + "type": "boolean" + }, + "registries": { + "items": { + "$ref": "#/components/schemas/NodePackageRegistry" + }, + "type": "array" + }, + "strict_out_of_sync": { + "type": "boolean" + } + }, + "required": [ + "include_dev_dependencies", + "strict_out_of_sync", + "exclude_lockfile_in_pr" + ], + "type": "object" + }, "NugetBuildArgs": { "additionalProperties": false, "properties": { @@ -14529,6 +19540,18 @@ ], "type": "object" }, + "NugetSettings": { + "additionalProperties": false, + "properties": { + "include_dev_dependencies": { + "type": "boolean" + } + }, + "required": [ + "include_dev_dependencies" + ], + "type": "object" + }, "OSConditionRiskFactor": { "properties": { "included_in_score": { @@ -14566,6 +19589,28 @@ "example": "https://registry-1.docker.io/account/bundle", "type": "string" }, + "OperatingSystem": { + "description": "Operating system for container images (Go GOOS conventions)", + "enum": [ + "aix", + "android", + "darwin", + "dragonfly", + "freebsd", + "illumos", + "ios", + "js", + "linux", + "netbsd", + "openbsd", + "plan9", + "solaris", + "wasip1", + "windows", + "other" + ], + "type": "string" + }, "Org": { "additionalProperties": false, "properties": { @@ -14732,8 +19777,57 @@ ], "type": "object" }, + "OrgContext": { + "description": "Service catalog enrichment from org-context connectors", + "properties": { + "application": { + "description": "Parent application this service belongs to", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "catalog_name": { + "description": "Identifier for this service in the catalog system", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "category": { + "description": "Service category (e.g., \"backend\", \"data-pipeline\", \"frontend\")", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "lifecycle": { + "description": "Lifecycle stage of the service (e.g., \"production\", \"deprecated\")", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "owner": { + "description": "Owning team or person as recorded in the service catalog", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "title": { + "description": "Human-readable display title of the service", + "maxLength": 256, + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, "OrgFilters": { "properties": { + "cve": { + "description": "CVE identifier(s) to filter by (e.g. CVE-2024-1234). Rows whose cve is in this list are included.", + "items": { + "type": "string" + }, + "type": "array" + }, "empty_project_tags": { "enum": [ "include", @@ -14749,17 +19843,19 @@ "type": "array" }, "introduced": { - "properties": { - "from": { - "format": "date-time", - "type": "string" - }, - "to": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/schemas/FilterDateRange" + }, + "issue_status": { + "items": { + "type": "string" }, - "type": "object" + "type": "array" + }, + "issue_type": { + "items": { + "type": "string" + }, + "type": "array" }, "lifecycle": { "items": { @@ -14767,40 +19863,65 @@ }, "type": "array" }, + "nvd_severity": { + "items": { + "type": "string" + }, + "type": "array" + }, "product_name": { "items": { "type": "string" }, "type": "array" }, + "project_origin": { + "items": { + "type": "string" + }, + "type": "array" + }, "project_tags": { "items": { "type": "string" }, "type": "array" }, + "project_target_display_name": { + "items": { + "type": "string" + }, + "type": "array" + }, + "project_target_ref": { + "items": { + "type": "string" + }, + "type": "array" + }, "project_type": { "items": { "type": "string" }, "type": "array" }, - "updated": { - "properties": { - "from": { - "format": "date-time", - "type": "string" - }, - "to": { - "format": "date-time", - "type": "string" - } + "reachability": { + "items": { + "type": "string" }, - "type": "object" + "type": "array" + }, + "updated": { + "$ref": "#/components/schemas/FilterDateRange" } }, "type": "object" }, + "OrgID": { + "description": "The org id for the relevant project against which to run the test.", + "format": "uuid", + "type": "string" + }, "OrgIacSettingsRequest": { "description": "The Infrastructure as Code settings for an org.", "properties": { @@ -15454,6 +20575,41 @@ ], "type": "object" }, + "OwnerDetails": { + "additionalProperties": false, + "description": "Details about the package owner/maintainer", + "properties": { + "followers_count": { + "description": "Number of followers the package owner has on the source platform (e.g., GitHub) (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "location": { + "description": "Owner location", + "type": "string" + }, + "name": { + "description": "Owner/maintainer name", + "type": "string" + }, + "repositories_count": { + "description": "Number of repositories owned by the package owner on the source platform (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "total_stars": { + "description": "Total number of stars across all repositories owned by the package owner (\u003e= 0)", + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "followers_count", + "repositories_count", + "total_stars" + ], + "type": "object" + }, "Package": { "description": "Dependency models a package dependency.", "properties": { @@ -15474,6 +20630,138 @@ ], "type": "object" }, + "PackageAttributes": { + "allOf": [ + { + "$ref": "#/components/schemas/BasePackageAttributes" + }, + { + "properties": { + "latest_version": { + "description": "The latest published version of this package", + "example": "4.19.2", + "type": "string" + }, + "package_details": { + "$ref": "#/components/schemas/PackageDetails" + } + }, + "type": "object" + } + ], + "description": "Attributes for a package resource", + "example": { + "ecosystem": "npm", + "language": "JavaScript", + "latest_version": "4.19.2", + "owner_details": { + "followers_count": 123, + "location": "somewhere", + "name": "expressjs", + "repositories_count": 45, + "total_stars": 65000 + }, + "package_details": { + "homepage_url": "https://expressjs.com", + "registry_url": "https://www.npmjs.com/package/express", + "repository_url": "https://github.com/expressjs/express" + }, + "package_health": { + "community": { + "description": "...", + "has_code_of_conduct_file": true, + "has_contributing_file": true, + "has_funding_file": false, + "has_readme_file": true, + "rating": "Active", + "stargazers_count": 75000 + }, + "description": "The package has mixed or concerning signals that require closer review. Applies to medium, high, and critical vulnerabilities. Low-severity vulnerabilities are excluded.", + "maintenance": { + "description": "...", + "first_release_published_at": "2010-01-03T00:00:00Z", + "forks_count": 66, + "is_archived": false, + "is_forked": false, + "latest_release_number": "4.19.2", + "latest_release_published_at": "2024-10-08T00:00:00Z", + "lifecycle": "active", + "rating": "Healthy", + "total_versions_count": 760 + }, + "overall_rating": "Review recommended", + "popularity": { + "dependent_packages_count": 280, + "dependent_repos_count": 65000, + "description": "...", + "downloads": 12000, + "rating": "Influential project" + }, + "security": { + "description": "...", + "direct_vulnerabilities": true, + "direct_vulnerabilities_total": 3, + "rating": "Security issues found" + } + }, + "package_id": "pkg:npm/express", + "package_name": "express" + } + }, + "PackageDetails": { + "description": "Base package details with URLs", + "properties": { + "homepage_url": { + "description": "Package homepage URL", + "example": "https://expressjs.com", + "type": "string" + }, + "registry_url": { + "description": "Package registry URL", + "example": "https://www.npmjs.com/package/express", + "type": "string" + }, + "repository_url": { + "description": "Source repository URL", + "example": "https://github.com/expressjs/express", + "type": "string" + } + }, + "type": "object" + }, + "PackageHealth": { + "additionalProperties": false, + "description": "Overall health assessment of the package based on multiple signals", + "properties": { + "community": { + "$ref": "#/components/schemas/CommunityDetails" + }, + "description": { + "description": "Human-readable explanation of the overall rating", + "type": "string" + }, + "maintenance": { + "$ref": "#/components/schemas/MaintenanceDetails" + }, + "overall_rating": { + "description": "Overall health assessment of the package based on security, maintenance, community, and popularity signals", + "enum": [ + "Healthy", + "Review recommended", + "Not recommended", + "Not enough data to compute health status" + ], + "type": "string" + }, + "popularity": { + "$ref": "#/components/schemas/PopularityDetails" + }, + "security": { + "$ref": "#/components/schemas/SecurityDetails" + } + }, + "type": "object" + }, "PackageLocation": { "description": "Package dependency version.\n\nFinding type: SCA", "example": { @@ -15560,6 +20848,37 @@ }, "type": "object" }, + "PackageRepository": { + "additionalProperties": true, + "properties": { + "integration_type": { + "enum": [ + "artifactory", + "nexus" + ], + "type": "string" + }, + "repository": { + "type": "string" + }, + "type": { + "enum": [ + "direct", + "integration" + ], + "type": "string" + }, + "url": { + "description": "used for display purpose only", + "type": "string" + } + }, + "required": [ + "type", + "repository" + ], + "type": "object" + }, "PackageRepresentation": { "properties": { "package": { @@ -15568,6 +20887,132 @@ }, "type": "object" }, + "PackageVersionAttributes": { + "allOf": [ + { + "$ref": "#/components/schemas/BasePackageAttributes" + }, + { + "properties": { + "latest_version_indicator": { + "description": "Whether this is the latest version of the package", + "example": true, + "type": "boolean" + }, + "package_details": { + "$ref": "#/components/schemas/PackageVersionDetails" + }, + "package_version": { + "description": "The specific version string of this package", + "example": "4.19.2", + "type": "string" + }, + "package_version_id": { + "description": "Package version identifier in PURL format (e.g., pkg:npm/express@4.19.2)", + "example": "pkg:npm/express@4.19.2", + "type": "string" + }, + "published_at": { + "description": "Timestamp when this version was published", + "example": "2024-10-08T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "required": [ + "package_version_id", + "package_version", + "latest_version_indicator" + ], + "type": "object" + } + ], + "description": "Attributes for a package version resource", + "example": { + "ecosystem": "npm", + "language": "JavaScript", + "latest_version_indicator": true, + "owner_details": { + "followers_count": 123, + "location": "somewhere", + "name": "expressjs", + "repositories_count": 45, + "total_stars": 65000 + }, + "package_details": { + "download_url": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "homepage_url": "https://expressjs.com", + "registry_url": "https://www.npmjs.com/package/express", + "registry_version_url": "https://www.npmjs.com/package/express/v/4.19.2", + "repository_url": "https://github.com/expressjs/express" + }, + "package_health": { + "community": { + "description": "...", + "has_code_of_conduct_file": true, + "has_contributing_file": true, + "has_funding_file": false, + "has_readme_file": true, + "rating": "Active", + "stargazers_count": 75000 + }, + "description": "The package has mixed or concerning signals that require closer review. Applies to medium, high, and critical vulnerabilities. Low-severity vulnerabilities are excluded.", + "maintenance": { + "description": "...", + "first_release_published_at": "2010-01-03T00:00:00Z", + "forks_count": 66, + "is_archived": false, + "is_forked": false, + "latest_release_number": "4.19.2", + "latest_release_published_at": "2024-10-08T00:00:00Z", + "lifecycle": "active", + "rating": "Healthy", + "total_versions_count": 760 + }, + "overall_rating": "Review recommended", + "popularity": { + "dependent_packages_count": 280, + "dependent_repos_count": 65000, + "description": "...", + "downloads": 12000, + "rating": "Influential project" + }, + "security": { + "description": "...", + "direct_vulnerabilities": true, + "direct_vulnerabilities_total": 3, + "rating": "Security issues found" + } + }, + "package_id": "pkg:npm/express", + "package_name": "express", + "package_version": "4.19.2", + "package_version_id": "pkg:npm/express@4.19.2", + "published_at": "2024-10-08T00:00:00Z" + } + }, + "PackageVersionDetails": { + "allOf": [ + { + "$ref": "#/components/schemas/PackageDetails" + }, + { + "properties": { + "download_url": { + "description": "Direct download URL for this version", + "example": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "type": "string" + }, + "registry_version_url": { + "description": "Registry URL for this specific version", + "example": "https://www.npmjs.com/package/express/v/4.19.2", + "type": "string" + } + }, + "type": "object" + } + ] + }, "PaginatedLinks": { "additionalProperties": false, "example": { @@ -15594,6 +21039,68 @@ }, "type": "object" }, + "PaginationLinks": { + "description": "Cursor-based pagination links", + "properties": { + "first": { + "description": "Link to the first page", + "format": "uri", + "type": "string" + }, + "next": { + "description": "Link to the next page (if available)", + "format": "uri", + "type": "string" + }, + "prev": { + "description": "Link to the previous page (if available)", + "format": "uri", + "type": "string" + }, + "self": { + "description": "Link to the current page", + "format": "uri", + "type": "string" + } + }, + "type": "object" + }, + "Party": { + "description": "A group / team / individual, such as an author of a piece of software", + "properties": { + "email": { + "description": "An email which can be used to contact this party", + "format": "email", + "maxLength": 320, + "nullable": true, + "type": "string" + }, + "kind": { + "enum": [ + "person", + "organization", + "unknown" + ] + }, + "name": { + "description": "Name of the party", + "maxLength": 255, + "type": "string" + }, + "uri": { + "description": "URL or URI referring to the party, if available", + "format": "uri", + "maxLength": 2048, + "nullable": true, + "type": "string" + } + }, + "required": [ + "kind", + "name" + ], + "type": "object" + }, "PassFail": { "description": "Indicate whether a Test passes or fails.", "enum": [ @@ -15602,6 +21109,13 @@ ], "type": "string" }, + "PatTenantId": { + "description": "Identifier of the tenant to which the Personal Access Token is scoped.", + "example": "550e8400-e29b-41d4-a716-446655440000", + "format": "uuid", + "nullable": true, + "type": "string" + }, "PatchProjectRequest": { "additionalProperties": false, "properties": { @@ -15780,6 +21294,46 @@ ], "type": "object" }, + "PersonalAccessTokenCreatedAt": { + "description": "Date/Time when the token was created", + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "PersonalAccessTokenExpiresAt": { + "description": "Date/Time when the token expires", + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "PersonalAccessTokenId": { + "description": "The personal access token id", + "example": "01HSBP9DKDK39KWZQV84PSPRHY", + "format": "ulid", + "type": "string" + }, + "PersonalAccessTokenLabel": { + "description": "A human-friendly name for the personal access token", + "example": "my token", + "format": "string", + "type": "string" + }, + "PersonalAccessTokenType": { + "description": "Type of the resource.", + "enum": [ + "personal_access_token" + ], + "type": "string" + }, + "PhpSettings": { + "additionalProperties": false, + "properties": { + "composer": { + "$ref": "#/components/schemas/ComposerSettings" + } + }, + "type": "object" + }, "PinPackageAdvice": { "description": "Pin a package at a specific version. Pinning is a capability not supported\nby all ecosystems, which causes a transitive dependency to be pinned at\na specific version with an override.\n\nFor example, the `replace` go.mod directive can override package dependency\nconstraints, forcing a specific version to be used in the application.\n\nPinning could break an application.\n\nNote: In practice pin actions today are solely used in python pip's packages as pip does not calculate upgrade paths", "example": { @@ -15808,6 +21362,41 @@ ], "type": "object" }, + "PipSettings": { + "additionalProperties": false, + "properties": { + "python_version": { + "enum": [ + "2", + "3", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", + "3.14" + ], + "type": "string" + } + }, + "required": [ + "python_version" + ], + "type": "object" + }, + "PipenvSettings": { + "additionalProperties": false, + "properties": { + "include_dev_dependencies": { + "type": "boolean" + } + }, + "required": [ + "include_dev_dependencies" + ], + "type": "object" + }, "Platform": { "enum": [ "aix/ppc64", @@ -15896,6 +21485,18 @@ ], "type": "string" }, + "PoetrySettings": { + "additionalProperties": false, + "properties": { + "include_dev_dependencies": { + "type": "boolean" + } + }, + "required": [ + "include_dev_dependencies" + ], + "type": "object" + }, "PolicyActionIgnore": { "additionalProperties": false, "properties": { @@ -15909,6 +21510,101 @@ "type": "object" }, "PolicyActionIgnoreData": { + "discriminator": { + "mapping": { + "not-vulnerable": "#/components/schemas/PolicyActionIgnoreDataNotVulnerable", + "temporary-ignore": "#/components/schemas/PolicyActionIgnoreDataTemporaryIgnore", + "wont-fix": "#/components/schemas/PolicyActionIgnoreDataWontFix" + }, + "propertyName": "ignore_type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/PolicyActionIgnoreDataWontFix" + }, + { + "$ref": "#/components/schemas/PolicyActionIgnoreDataTemporaryIgnore" + }, + { + "$ref": "#/components/schemas/PolicyActionIgnoreDataNotVulnerable" + } + ], + "type": "object" + }, + "PolicyActionIgnoreDataNotVulnerable": { + "additionalProperties": false, + "properties": { + "expires": { + "example": "2024-03-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "ignore_type": { + "enum": [ + "not-vulnerable" + ], + "type": "string" + }, + "reason": { + "maxLength": 10000, + "type": "string" + } + }, + "required": [ + "ignore_type" + ], + "type": "object" + }, + "PolicyActionIgnoreDataTemporaryIgnore": { + "additionalProperties": false, + "properties": { + "expires": { + "example": "2024-03-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "ignore_type": { + "enum": [ + "temporary-ignore" + ], + "type": "string" + }, + "reason": { + "maxLength": 10000, + "type": "string" + } + }, + "required": [ + "ignore_type", + "expires" + ], + "type": "object" + }, + "PolicyActionIgnoreDataWontFix": { + "additionalProperties": false, + "properties": { + "expires": { + "example": "2024-03-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "ignore_type": { + "enum": [ + "wont-fix" + ], + "type": "string" + }, + "reason": { + "maxLength": 10000, + "type": "string" + } + }, + "required": [ + "ignore_type" + ], + "type": "object" + }, + "PolicyActionIgnoreData__0": { "additionalProperties": false, "properties": { "expires": { @@ -15934,6 +21630,18 @@ ], "type": "object" }, + "PolicyActionIgnore__0": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/PolicyActionIgnoreData__0" + } + }, + "required": [ + "data" + ], + "type": "object" + }, "PolicyAttributes": { "additionalProperties": false, "properties": { @@ -16084,7 +21792,7 @@ "additionalProperties": false, "properties": { "new_action": { - "$ref": "#/components/schemas/PolicyActionIgnore" + "$ref": "#/components/schemas/PolicyActionIgnore__0" }, "new_conditions_group": { "$ref": "#/components/schemas/PolicyConditionsGroup" @@ -16096,7 +21804,7 @@ "$ref": "#/components/schemas/PolicyReview" }, "old_action": { - "$ref": "#/components/schemas/PolicyActionIgnore" + "$ref": "#/components/schemas/PolicyActionIgnore__0" }, "old_conditions_group": { "$ref": "#/components/schemas/PolicyConditionsGroup" @@ -16293,11 +22001,153 @@ ], "type": "string" }, + "PolymorphicAssetData": { + "description": "JSON:API data for any asset type (polymorphic)", + "properties": { + "attributes": { + "anyOf": [ + { + "$ref": "#/components/schemas/ContainerImageAttributesResponse" + }, + { + "$ref": "#/components/schemas/SbomAttributesResponse" + }, + { + "$ref": "#/components/schemas/RepositoryAttributesResponse" + } + ] + }, + "id": { + "description": "The unique identifier of the asset", + "format": "uuid", + "type": "string" + }, + "links": { + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + }, + "relationships": { + "description": "JSON:API relationships linking to related resources", + "properties": { + "projects": { + "description": "Link to the asset's related projects", + "properties": { + "links": { + "properties": { + "related": { + "description": "URL to the related projects endpoint", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "targets": { + "description": "Link to the asset's related targets", + "properties": { + "links": { + "properties": { + "related": { + "description": "URL to the related targets endpoint", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "type": { + "description": "The JSON:API resource type", + "enum": [ + "container_images", + "sboms", + "repositories" + ], + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + }, + "PopularityDetails": { + "additionalProperties": false, + "description": "Popularity signals for the package", + "properties": { + "dependent_packages_count": { + "description": "Number of packages that depend on this package (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "dependent_repos_count": { + "description": "Number of repositories that depend on this package (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "description": { + "description": "Human-readable explanation of the popularity rating", + "type": "string" + }, + "downloads": { + "description": "Download count (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "rating": { + "description": "Popularity rating based on downloads and ecosystem usage", + "enum": [ + "Limited", + "Small", + "Recognized", + "Popular", + "Influential project", + "Key ecosystem project" + ], + "type": "string" + } + }, + "required": [ + "dependent_packages_count", + "dependent_repos_count", + "downloads" + ], + "type": "object" + }, "Principal": { "properties": { + "actor_source": { + "description": "The kind of actor that created the policy. \"snyk_user\" is a Snyk identity; \"external_user\" indicates an external (e.g. SCM) actor.", + "enum": [ + "snyk_user", + "external_user" + ], + "type": "string" + }, "email": { "type": "string" }, + "external_id": { + "description": "The identifier of the actor within the external provider. Present only when the policy was created by an external actor; absent for Snyk users.", + "type": "string" + }, "id": { "description": "The Snyk ID corresponding to this user or service account that created the policy", "format": "uuid", @@ -16306,6 +22156,21 @@ "name": { "description": "Name of the user or service account that created the policy", "type": "string" + }, + "origin": { + "description": "The external provider through which the actor created the policy. Present only when the policy was created by an external actor; absent for Snyk users.", + "enum": [ + "bitbucket_cloud", + "bitbucket_connect_app", + "bitbucket_server", + "gitlab", + "github", + "github_enterprise", + "github_cloud_app", + "github_server_app", + "azure_repos" + ], + "type": "string" } }, "required": [ @@ -16353,6 +22218,71 @@ ], "type": "object" }, + "PrivateRegistryIntegration": { + "additionalProperties": false, + "properties": { + "created_at": { + "description": "When this integration was created", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The unique identifier for the ecosystem integration", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "integration_type": { + "description": "The type of integration (e.g., 'artifactory', 'nexus-private-repo')", + "enum": [ + "artifactory", + "nexus-private-repo", + "github", + "github-cloud-app", + "github-enterprise", + "bitbucket-cloud", + "bitbucket-connect-app", + "bitbucket-server", + "gitlab", + "azure-repos" + ], + "example": "artifactory", + "type": "string" + }, + "urls": { + "description": "Array of full, publicly-accessible URLs (e.g. Go module proxy URLs) for this integration. Set this field to undefined, an empty array, or omit it to delete the integration.", + "example": [ + "https://artifactory.example.com/artifactory/api/go/my-go-modules" + ], + "items": { + "format": "uri", + "maxLength": 2048, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "integration_type" + ], + "type": "object" + }, + "PrivateRegistrySettings": { + "additionalProperties": false, + "properties": { + "integrations": { + "items": { + "$ref": "#/components/schemas/PrivateRegistryIntegration" + }, + "type": "array" + } + }, + "required": [ + "integrations" + ], + "type": "object" + }, "Problem": { "additionalProperties": false, "example": { @@ -16623,6 +22553,12 @@ ], "type": "object" }, + "ProjectCommitSha": { + "description": "The relevant commit sha for the project against which the test was run.", + "example": "24bf40375aee46daeffd2c260493b2d562fe2c90", + "pattern": "^[0-9a-f]{40}$", + "type": "string" + }, "ProjectEntityLocator": { "description": "ProjectEntityLocator locates a Snyk Project by its public ID.", "properties": { @@ -16644,6 +22580,11 @@ ], "type": "object" }, + "ProjectID": { + "description": "The relevant uuid for the project against which to run the test.", + "format": "uuid", + "type": "string" + }, "ProjectMeta": { "additionalProperties": false, "properties": { @@ -16773,6 +22714,193 @@ ], "type": "object" }, + "ProjectRelationshipAttributes": { + "additionalProperties": false, + "description": "Attributes of the project resource", + "properties": { + "base_image_remediation": { + "$ref": "#/components/schemas/BaseImageRemediation" + }, + "is_canonical": { + "description": "Indicates whether this project is the canonical project for its target_file.\nProjects are grouped by target_file, and within each group, the project with the most\nrecent snapshot_created_at timestamp is marked as canonical. This canonical project\nis used for computing vulnerability counts for the asset.\nWhen target_file is empty, each project is its own group (always canonical).\n", + "type": "boolean" + }, + "issues": { + "description": "Issue counts by severity", + "properties": { + "critical": { + "description": "Count of critical severity issues", + "type": "integer" + }, + "high": { + "description": "Count of high severity issues", + "type": "integer" + }, + "low": { + "description": "Count of low severity issues", + "type": "integer" + }, + "medium": { + "description": "Count of medium severity issues", + "type": "integer" + } + }, + "required": [ + "critical", + "high", + "medium", + "low" + ], + "type": "object" + }, + "monitor_created_at": { + "description": "Timestamp when the monitor was created", + "format": "date-time", + "type": "string" + }, + "monitor_id": { + "description": "The ID of the monitor associated with this project", + "format": "uuid", + "type": "string" + }, + "org_id": { + "description": "The ID of the organization that owns this project", + "format": "uuid", + "type": "string" + }, + "project_type": { + "description": "Type of the project (e.g., npm, maven)", + "enum": [ + "rubygems", + "composer", + "sbt", + "maven", + "gomodules", + "poetry", + "cocoapods", + "pipenv", + "pnpm", + "pub", + "yarn", + "yarn-workspace", + "paket", + "pip", + "unmanaged", + "gradle", + "nuget", + "cpp", + "npm", + "conan", + "govendor", + "hex", + "golangdep", + "cargo", + "swift", + "golang", + "secrets", + "iac", + "uv", + "sast", + "armconfig", + "helmconfig", + "terraformconfig", + "cloudformationconfig", + "k8sconfig", + "cloudconfig", + "dockerfile", + "deb", + "apk", + "linux", + "rpm" + ], + "type": "string" + }, + "risk_score": { + "description": "The calculated risk score for this project", + "type": "integer" + }, + "snapshot_created_at": { + "description": "Timestamp when the snapshot was created", + "format": "date-time", + "type": "string" + }, + "snapshot_id": { + "description": "The ID of the snapshot", + "format": "uuid", + "type": "string" + }, + "target_file": { + "description": "Path to the manifest file", + "type": "string" + }, + "target_id": { + "description": "The ID of the target this project belongs to", + "format": "uuid", + "type": "string" + }, + "target_origin": { + "description": "Origin of the target (e.g., github, gitlab)", + "type": "string" + }, + "target_ref": { + "description": "The target reference (e.g., branch name)", + "type": "string" + } + }, + "type": "object" + }, + "ProjectRelationshipData": { + "additionalProperties": false, + "description": "Full project resource with attributes", + "properties": { + "attributes": { + "$ref": "#/components/schemas/ProjectRelationshipAttributes" + }, + "id": { + "description": "The unique identifier of the project", + "example": "11111111-2222-3333-4444-555555555555", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The JSON:API resource type.", + "enum": [ + "project" + ], + "example": "project", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "ProjectRelationshipListResponse": { + "additionalProperties": false, + "description": "Response containing linked projects with full attributes", + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/ProjectRelationshipData" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApiVersion" + }, + "links": { + "$ref": "#/components/schemas/RelationshipLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + }, "ProjectRelationships": { "additionalProperties": false, "properties": { @@ -16973,6 +23101,74 @@ }, "type": "object" }, + "ProposedBaseImages": { + "description": "Categorized base image upgrade recommendations", + "properties": { + "alternative_upgrade": { + "items": { + "$ref": "#/components/schemas/ImageInfo" + }, + "type": "array" + }, + "major_upgrade": { + "items": { + "$ref": "#/components/schemas/ImageInfo" + }, + "type": "array" + }, + "minor_upgrade": { + "items": { + "$ref": "#/components/schemas/ImageInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProvenanceAttestation": { + "description": "A provenance attestation describing how a container image manifest was built", + "properties": { + "build_config_commit": { + "description": "Git commit of the build config that produced the image", + "maxLength": 1024, + "type": "string" + }, + "build_started_at": { + "description": "When the build started", + "format": "date-time", + "type": "string" + }, + "build_type": { + "description": "Build type URI identifying the build definition format", + "maxLength": 1024, + "type": "string" + }, + "builder_id": { + "description": "Identity of the builder that produced the attestation", + "maxLength": 1024, + "type": "string" + }, + "dockerfile_metadata": { + "$ref": "#/components/schemas/DockerfileMetadata" + }, + "manifest_digest": { + "description": "Manifest digest of the image this attestation attests", + "maxLength": 256, + "type": "string" + }, + "repository_uri": { + "description": "URI of the repository hosting the build config", + "maxLength": 1024, + "type": "string" + }, + "source_attestation_digest": { + "description": "Digest of the attestation manifest descriptor itself", + "maxLength": 256, + "type": "string" + } + }, + "type": "object" + }, "PublicApp": { "additionalProperties": false, "properties": { @@ -17355,6 +23551,21 @@ }, "type": "object" }, + "PythonSettings": { + "additionalProperties": false, + "properties": { + "pip": { + "$ref": "#/components/schemas/PipSettings" + }, + "pipenv": { + "$ref": "#/components/schemas/PipenvSettings" + }, + "poetry": { + "$ref": "#/components/schemas/PoetrySettings" + } + }, + "type": "object" + }, "QuayCrAttributes": { "properties": { "required": { @@ -17408,7 +23619,13 @@ }, "QueryVersion": { "description": "Requested API version", - "example": "2025-11-05", + "example": "2026-03-25", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + }, + "QueryVersion__0": { + "description": "Requested API version", + "example": "2021-06-04", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" }, @@ -17433,7 +23650,7 @@ "description": "Indicate the reachability signals as additional evidence for the finding.", "properties": { "paths": { - "description": "Sequence of locations within this flow of execution.\n\nFor example, a sequence of locations connecting the \"source\" location\nwhere input data is obtained, to a \"sink\" location where it is used.", + "description": "Paths by which the vulnerable code can be reached.\n\nIncludes the name of the function, the path through the\nsource code that reaches the function, and the location\nat which the vulnerable function is called.", "items": { "$ref": "#/components/schemas/ReachablePath" }, @@ -17542,9 +23759,10 @@ "type": "object" }, "RedirectUris": { - "description": "List of allowed redirect URIs to call back after authentication.", + "description": "List of allowed redirect URIs (OAuth callbacks) where Snyk will redirect users after authorization.\n\nThese are URLs controlled by your application that Snyk will send the user to after they authorize your app. \nThe redirect URI used in your authorization request must exactly match one of the URIs registered here.\n\n**Important:** The redirect URI in your OAuth authorization request must be an exact match (including protocol, domain, path, and query parameters) to one of the URIs specified in this list.\n\n**Example valid redirect URI:** `https://example.com/callback` or `https://myapp.example.com/auth/snyk/callback`\n\nFor more information on the complete OAuth workflow, see the [Snyk Apps API tutorial](https://docs.snyk.io/snyk-api/using-specific-snyk-apis/snyk-apps-apis/tutorial-create-a-snyk-app).\n", "example": [ - "https://example.com/callback" + "https://example.com/callback", + "https://example.com/auth/snyk/callback" ], "items": { "format": "uri", @@ -17554,9 +23772,10 @@ "type": "array" }, "RedirectUrisNoMin": { - "description": "List of allowed redirect URIs to call back after authentication.", + "description": "List of allowed redirect URIs (OAuth callbacks) where Snyk will redirect users after authorization.\n\nThese are URLs controlled by your application that Snyk will send the user to after they authorize your app. \nThe redirect URI used in your authorization request must exactly match one of the URIs registered here.\n\n**Important:** The redirect URI in your OAuth authorization request must be an exact match (including protocol, domain, path, and query parameters) to one of the URIs specified in this list.\n\n**Example valid redirect URI:** `https://example.com/callback` or `https://myapp.example.com/auth/snyk/callback`\n\nFor more information on the complete OAuth workflow, see the [Snyk Apps API tutorial](https://docs.snyk.io/snyk-api/using-specific-snyk-apis/snyk-apps-apis/tutorial-create-a-snyk-app).\n", "example": [ - "https://example.com/callback" + "https://example.com/callback", + "https://example.com/auth/snyk/callback" ], "items": { "format": "uri", @@ -17623,6 +23842,17 @@ ], "type": "object" }, + "RelationshipLinks": { + "allOf": [ + { + "$ref": "#/components/schemas/JsonApiLinks" + }, + { + "$ref": "#/components/schemas/PaginationLinks" + } + ], + "description": "Links for relationship endpoint responses (combines relationship + pagination links)" + }, "RelationshipObjectToOne": { "properties": { "data": { @@ -17675,6 +23905,210 @@ }, "type": "object" }, + "RemoveRepositoryAliasAttributes": { + "properties": { + "new_url": { + "description": "The aliased URL to detach from its canonical asset", + "example": "https://github.com/org/repo-renamed.git", + "type": "string" + }, + "url": { + "description": "The primary URL of the canonical document that owns the alias. Used to verify the request targets the correct document.", + "example": "https://github.com/org/repo.git", + "type": "string" + } + }, + "required": [ + "url", + "new_url" + ], + "type": "object" + }, + "RemoveRepositoryAliasRequestData": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/RemoveRepositoryAliasAttributes" + }, + "id": { + "description": "The _id of the canonical reference document in the asset-reference collection", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "asset_aliases" + ], + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, + "RepositoryAliasItemAttributes": { + "additionalProperties": false, + "properties": { + "new_url": { + "description": "The alias URL on the canonical document", + "type": "string" + }, + "url": { + "description": "The primary URL of the canonical document", + "type": "string" + } + }, + "required": [ + "url", + "new_url" + ], + "type": "object" + }, + "RepositoryAliasesData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/RepositoryAliasItemAttributes" + }, + "id": { + "description": "The _id of the canonical reference document in the asset-reference collection", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "asset_aliases" + ], + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + }, + "RepositoryAttributesResponse": { + "allOf": [ + { + "$ref": "#/components/schemas/AssetBaseAttributes" + }, + { + "$ref": "#/components/schemas/RepositoryCommonFields" + } + ] + }, + "RepositoryCommonFields": { + "description": "Attributes specific to repository assets.", + "properties": { + "archived": { + "description": "Whether the repository is archived", + "nullable": true, + "type": "boolean" + }, + "default_branch_name": { + "description": "Default branch name", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "description": { + "description": "Optional repository description", + "maxLength": 1024, + "nullable": true, + "type": "string" + }, + "fork": { + "description": "Whether the repository is a fork", + "nullable": true, + "type": "boolean" + }, + "is_empty": { + "description": "Whether the repository is empty", + "nullable": true, + "type": "boolean" + }, + "is_personal": { + "description": "Whether the repository is a personal repository", + "nullable": true, + "type": "boolean" + }, + "languages": { + "description": "Programming languages detected in the repository", + "items": { + "$ref": "#/components/schemas/RepositoryLanguage" + }, + "maxItems": 50, + "type": "array" + }, + "last_sync": { + "description": "When the repository was last synced from the SCM", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "name": { + "description": "Repository name from SCM", + "maxLength": 256, + "type": "string" + }, + "org_context": { + "$ref": "#/components/schemas/OrgContext" + }, + "pushed_at": { + "description": "When code was last pushed to the repository", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "scm_id": { + "description": "SCM-specific identifier (GitHub numeric ID, GitLab project ID, etc.)", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "scm_organization": { + "description": "SCM organization name", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "scm_project": { + "description": "SCM project name", + "maxLength": 256, + "nullable": true, + "type": "string" + }, + "topics": { + "description": "Repository topics/tags", + "items": { + "maxLength": 64, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "description": "Web browse URL of the repository (natural key, unique per tenant)", + "maxLength": 1000, + "type": "string" + }, + "visibility": { + "description": "Repository visibility", + "enum": [ + "public", + "private", + "internal" + ], + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, "RepositoryGroup": { "description": "A repository with its matching tags grouped together", "properties": { @@ -17695,6 +24129,22 @@ ], "type": "object" }, + "RepositoryLanguage": { + "description": "Programming language detected in a repository", + "properties": { + "byte_count": { + "description": "Number of bytes of code in this language", + "format": "int64", + "type": "integer" + }, + "name": { + "description": "Language name", + "maxLength": 256, + "type": "string" + } + }, + "type": "object" + }, "Resolution": { "additionalProperties": false, "description": "An optional field recording when and via what means an issue was resolved, if it was resolved.\nResolved issues are retained for XX days.\n", @@ -18044,41 +24494,101 @@ "format": "uuid", "type": "string" }, - "SCMBundleStoreAttributes": { + "RootFs": { + "description": "Root filesystem information with ordered layer diff IDs.\nEach diff_id is a SHA256 digest of the uncompressed layer content.\n", "properties": { - "target_id": { - "description": "The id of the target which has been imported into Snyk.", - "format": "uuid", - "type": "string" + "diff_ids": { + "description": "Diff IDs for each layer (SHA256 of uncompressed content)", + "items": { + "maxLength": 1024, + "type": "string" + }, + "maxItems": 256, + "type": "array" }, - "target_version": { - "description": "The branch or commit hash to scan", - "example": "main", + "type": { + "description": "Root filesystem type (e.g., \"layers\")", + "maxLength": 128, "type": "string" } }, "required": [ - "target_id" + "diff_ids", + "type" ], "type": "object" }, - "SCMBundleStoreData": { - "properties": { - "attributes": { - "$ref": "#/components/schemas/SCMBundleStoreAttributes" - }, - "type": { - "enum": [ - "ai_bom_scm_bundle" - ], - "type": "string" - } - }, - "required": [ - "type", - "attributes" + "RsqlFilterString": { + "description": "RSQL filter expression for filtering results.\n\n**Supported operators:**\n- `==` (equal), `!=` (not equal)\n- `\u003c` or `=lt=` (less than), `\u003e` or `=gt=` (greater than)\n- `\u003c=` or `=le=` (less than or equal), `\u003e=` or `=ge=` (greater than or equal)\n- `=in=(val1,val2)` (IN list), `=out=(val1,val2)` (NOT IN list)\n- `;` or ` and ` (logical AND), `,` or ` or ` (logical OR) - word operators are case-insensitive\n\n**Wildcard pattern matching:**\nUse `*` (asterisk) for flexible string matching with `==` and `!=` operators:\n- `*value*` - Contains (e.g., `registry==*docker*` matches \"docker.io\")\n- `value*` - Starts with (e.g., `registry==docker*` matches \"docker.io\")\n- `*value` - Ends with (e.g., `name==*nginx` matches \"library/nginx\")\n- `!=*value*` - Does not contain (e.g., `class!=*test*`)\n\nNote: Special SQL characters (%, _) are automatically escaped for security.\n\n**Quoted values:**\nValues can optionally be wrapped in single quotes (`'...'`) or double quotes (`\"...\"`).\nQuotes are stripped before comparison, so `registry=='docker.io'` is equivalent to `registry==docker.io`.\nEscaped quotes inside quoted values are supported (e.g., `name==\"O\\\"Reilly\"`).\nQuoting is required when filtering for empty values (see below).\n\n**Filtering for empty values:**\nUse empty quotes (`''` or `\"\"`) with `==` or `!=` to filter by empty fields:\n- `registry==''` - Matches assets where registry is empty\n- `registry!=''` - Matches assets where registry has a value\n\n**Multi-field substring search:**\nUse the special `q` field to search across multiple fields simultaneously using case-insensitive substring matching:\n- `q==\u003csearch_term\u003e` - Searches across all searchable string fields (labels, tags, registry, repository, name, config_digest, manifest_digest, index_digest, image_tag)\n- Only supports the `==` operator (no wildcards needed - automatically searches for substring matches)\n- Uses case-insensitive pattern matching (PostgreSQL ILIKE)\n- Does not support linguistic features like stemming or ranking\n- Special characters are automatically escaped for security\n- Can be combined with other filters: `q==nginx;type==container_images`\n\n**Supported fields:**\n\nCommon fields (apply to all asset types):\n- `q` (string) - Multi-field substring search (see above)\n- `id` (UUID) - Asset ID\n- `type` (string) - Type of asset. Allowed values: `container_images`\n- `class` (string) - Class of asset (e.g., A, B)\n- `created_at` (timestamp) - Asset creation timestamp (ISO 8601 format)\n- `updated_at` (timestamp) - Asset last update timestamp (ISO 8601 format)\n- `labels` (string array) - Asset labels\n- `tags` (object) - Asset tags. Requires a sub-field (e.g., `tags.env==production`)\n\nContainer image fields (apply when type is `container_images`):\n- `registry` (string) - Container image registry (e.g., docker.io)\n- `repository` (string) - Container image repository path\n- `name` (string) - Container image name\n- `config_digest` (string) - Image config digest\n- `manifest_digest` (string) - Distribution manifest digest\n- `index_digest` (string) - Distribution index digest\n- `image_tag` (string) - Image tag from discovery source\n- `image_labels` (object) - OCI image config labels. Requires a sub-field (e.g., `image_labels.vendor==nginx`)\n\n**Examples:**\n- `q==nginx` - Multi-field substring search for \"nginx\"\n- `q==docker.io;type==container_images` - Search \"docker.io\" substring in container images only\n- `type==container_images` - Exact match on asset type\n- `registry==*docker*` - Registry contains \"docker\" (wildcard)\n- `created_at\u003e2024-01-01` or `created_at=gt=2024-01-01` - Date comparison\n- `class==A;created_at=ge=2024-01-01` - AND combination\n- `labels=in=(production,staging)` - Labels IN list\n- `tags.env==production` - Tag sub-field filter\n- `image_labels.vendor==nginx` - Image label sub-field filter\n- `registry=='docker.io'` - Quoted value (equivalent to `registry==docker.io`)\n- `registry==''` - Assets where registry is empty\n- `registry!=''` - Assets where registry has a value\n", + "example": "type==container_images;created_at\u003e2024-01-01", + "type": "string" + }, + "RuleExtensionCopyFrom": { + "description": "The ID of the rule extension to copy from.", + "format": "uuid", + "type": "string" + }, + "RuleExtensionCreatedAt": { + "description": "Timestamp when the rule extension was created", + "format": "date-time", + "type": "string" + }, + "RuleExtensionDescription": { + "description": "The description for a rule extension to provide extra details on why it is safe to assume issues for this rule have been sanitized", + "maxLength": 4000, + "type": "string" + }, + "RuleExtensionId": { + "description": "Unique identifier for a rule extension", + "format": "uuid", + "type": "string" + }, + "RuleExtensionPublishedAt": { + "description": "Timestamp when the rule extension was published", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "RuleExtensionPublishedBy": { + "description": "User ID of the user who published the rule extension", + "format": "uuid", + "nullable": true, + "type": "string" + }, + "RuleExtensionRequestType": { + "description": "The type identifier for the \"rule_extensions\" resource.", + "enum": [ + "rule_extensions" ], - "type": "object" + "type": "string" + }, + "RuleExtensionStatus": { + "description": "The status for a rule extension. Rule extensions in draft do not apply to any analysis test until published", + "enum": [ + "published", + "draft" + ], + "type": "string" + }, + "RuleExtensionUpdatedAt": { + "description": "Timestamp when the rule extension was last updated", + "format": "date-time", + "type": "string" + }, + "Rules": { + "description": "Snyk rule identifiers (SNYK-LANG-...). Up to 50 unique values.", + "example": [ + "SNYK-JS-AXIOS-16298058", + "SNYK-JAVA-COMSQUAREUPOKHTTP3-1038737" + ], + "items": { + "pattern": "^SNYK-[A-Z]+-.+$", + "type": "string" + }, + "maxItems": 50, + "minItems": 1, + "type": "array", + "uniqueItems": true }, "SSOConnection": { "additionalProperties": false, @@ -18151,1331 +24661,1680 @@ ], "type": "object" }, - "SastScanConfiguration": { - "type": "object" - }, - "SbomDocument": { - "additionalProperties": true, - "type": "object" - }, - "SbomReachabilitySubject": { - "description": "Test subject for SBOM test with reachability analysis.", + "SastRuleExtensionConfiguration": { + "additionalProperties": false, "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": "#/components/schemas/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" + "rule_keys": { + "$ref": "#/components/schemas/SastRuleExtensionRuleKeys" }, "type": { - "enum": [ - "sbom_reachability" - ], - "type": "string" + "$ref": "#/components/schemas/SastRuleExtensionConfigurationType" } }, "required": [ "type", - "sbom_bundle_id", - "code_bundle_id", - "locator" + "rule_keys" ], "type": "object" }, - "SbomResource": { - "additionalProperties": false, - "properties": { - "id": { - "example": "b68b0b85-d039-4c05-abc0-04eb50ca0fe9", - "format": "uuid", - "type": "string" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "type" + "SastRuleExtensionConfigurationType": { + "description": "The type of the SAST rule extension configuration determines the Snyk SAST analysis behavior against the input fully qualified name.", + "enum": [ + "flows_through", + "if_true", + "if_false", + "any_usage" ], - "type": "object" + "type": "string" }, - "SbomResponse": { + "SastRuleExtensionFullyQualifiedName": { + "description": "The fully qualified name of a function that performs sanitization in your codebase. Should Snyk SAST analysis detect this function being used, issues for the given rule will not be raised.", + "maxLength": 1000, + "pattern": "^\\S+$", + "type": "string" + }, + "SastRuleExtensionId": { + "description": "Unique identifier for a SAST rule extension", + "format": "uuid", + "type": "string" + }, + "SastRuleExtensionKind": { + "description": "The kind of SAST rule extension.", + "enum": [ + "sast_sanitizer" + ], + "type": "string" + }, + "SastRuleExtensionRequest": { "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/SbomResource" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "$ref": "#/components/schemas/SastRuleExtensionRequestData" } }, "required": [ - "jsonapi", "data" ], "type": "object" }, - "SbomSubject": { - "description": "Test subject for SBOM test without reachability analysis.", + "SastRuleExtensionRequestData": { + "additionalProperties": false, "properties": { - "locator": { - "allOf": [ + "attributes": { + "oneOf": [ { - "$ref": "#/components/schemas/LocalPathLocator" + "$ref": "#/components/schemas/CreateSastRuleExtensionRequestAttributes" + }, + { + "$ref": "#/components/schemas/CopyRuleExtensionRequestAttributes" } - ], - "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" + "$ref": "#/components/schemas/RuleExtensionRequestType" } }, "required": [ "type", - "sbom_bundle_id", - "locator" + "attributes" ], "type": "object" }, - "SbomTestCreateAttributes": { + "SastRuleExtensionResponse": { + "additionalProperties": false, "properties": { - "format": { - "type": "string" + "attributes": { + "$ref": "#/components/schemas/SastRuleExtensionResponseAttributes" }, - "sbom": { - "additionalProperties": true, - "type": "object" + "id": { + "$ref": "#/components/schemas/SastRuleExtensionId" + }, + "type": { + "$ref": "#/components/schemas/RuleExtensionRequestType" } }, "required": [ - "sbom" + "id", + "type", + "attributes" ], "type": "object" }, - "SbomTestResultsAttributes": { - "additionalProperties": true, - "type": "object" - }, - "ScaScanConfiguration": { - "type": "object" - }, - "ScanAttributes": { - "description": "Scan attributes", - "example": { - "created_at": "2022-05-06T12:25:15-04:00", - "error": "", - "finished_at": "2022-05-06T12:25:15-04:00", - "kind": "user_initiated", - "options": { - "role_arn": "arn:aws:iam::123456789012:role/SnykCloud1234" - }, - "revision": 1, - "status": "success", - "updated_at": "2022-05-06T12:25:15-04:00" - }, + "SastRuleExtensionResponseAttributes": { + "additionalProperties": false, "properties": { - "created_at": { - "description": "When the scan was created", - "example": "2022-05-06T12:25:15-04:00", - "format": "date-time", - "type": "string" + "configuration": { + "$ref": "#/components/schemas/SastRuleExtensionConfiguration" }, - "deleted_at": { + "created_at": { + "description": "Timestamp when the SAST rule extension was created", "format": "date-time", - "nullable": true, "type": "string" }, - "environment_id": { - "description": "Environment ID", - "example": "052781a7-17f6-494d-0000-25c8b509abcd", + "created_by": { + "description": "User ID of the user who created the SAST rule extension", "format": "uuid", - "type": "string" - }, - "error": { - "description": "Error message if the scan failed", - "example": "could not start scan", "nullable": true, "type": "string" }, - "finished_at": { - "description": "When the scan finished", - "example": "2022-05-06T12:25:15-04:00", - "format": "date-time", - "nullable": true, - "type": "string" + "description": { + "$ref": "#/components/schemas/RuleExtensionDescription" }, "kind": { - "description": "Scan kind", - "enum": [ - "scheduled", - "user_initiated", - "event_driven", - null - ], - "example": "user_initiated", - "nullable": true, - "type": "string" + "$ref": "#/components/schemas/SastRuleExtensionKind" }, - "options": { - "example": { - "role_arn": "arn:aws:iam::123456789012:role/SnykCloud1234" - }, + "published_at": { + "description": "Timestamp when the SAST rule extension was published", + "format": "date-time", "nullable": true, - "type": "object" - }, - "organization_id": { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", - "format": "uuid", "type": "string" }, - "partial_errors": { - "description": "Errors that didn't fail the scan", + "published_by": { + "description": "User ID of the user who published the SAST rule extension", + "format": "uuid", + "nullable": true, "type": "string" }, - "revision": { - "description": "Increment for each change to a scan", - "example": 1, - "type": "number" + "signature": { + "$ref": "#/components/schemas/SastRuleExtensionSignature" }, "status": { - "description": "Scan status", - "enum": [ - "queued", - "in_progress", - "success", - "error", - null - ], - "example": "in_progress", - "nullable": true, - "type": "string" + "$ref": "#/components/schemas/RuleExtensionStatus" }, "updated_at": { - "description": "When the scan was last updated", - "example": "2022-05-06T12:25:15-04:00", + "description": "Timestamp when the SAST rule extension was last updated", "format": "date-time", + "type": "string" + }, + "updated_by": { + "description": "User ID of the user who last updated the SAST rule extension", + "format": "uuid", "nullable": true, "type": "string" } }, "required": [ - "created_at", - "revision", - "kind", "status", - "error" + "kind", + "signature", + "configuration", + "created_at", + "updated_at", + "created_by", + "updated_by", + "published_at", + "published_by" ], "type": "object" }, - "ScanConfiguration": { + "SastRuleExtensionResponseBody": { + "additionalProperties": false, "properties": { - "container": { - "$ref": "#/components/schemas/ContainerScanConfiguration" - }, - "iac": { - "$ref": "#/components/schemas/IacScanConfiguration" - }, - "sast": { - "$ref": "#/components/schemas/SastScanConfiguration" + "data": { + "$ref": "#/components/schemas/SastRuleExtensionResponse" }, - "sca": { - "$ref": "#/components/schemas/ScaScanConfiguration" + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" }, - "secrets": { - "$ref": "#/components/schemas/SecretsScanConfiguration" + "links": { + "$ref": "#/components/schemas/SelfLink" } }, + "required": [ + "data", + "jsonapi", + "links" + ], "type": "object" }, - "ScanCreateAttributes": { - "additionalProperties": false, - "description": "Scan create attributes", - "type": "object" + "SastRuleExtensionRuleKeys": { + "description": "Array of rule keys that the SAST rule extension applies to.", + "items": { + "maxLength": 200, + "type": "string" + }, + "maxItems": 2400, + "minItems": 1, + "type": "array", + "uniqueItems": true }, - "ScanCreateRelationships": { - "description": "Scan create relationships", + "SastRuleExtensionSignature": { + "additionalProperties": false, "properties": { - "environment": { - "properties": { - "data": { - "example": { - "id": "12000000-0000-0000-0000-000000000000", - "type": "environment" - }, - "properties": { - "id": { - "type": "string" - }, - "type": { - "type": "string" - } - }, - "required": [ - "type", - "id" - ], - "type": "object" - } - }, - "type": "object" + "fully_qualified_name": { + "$ref": "#/components/schemas/SastRuleExtensionFullyQualifiedName" } }, + "required": [ + "fully_qualified_name" + ], "type": "object" }, - "ScanItemType": { + "SastRuleExtensionTypes": { + "description": "The type of the SAST rule extensions determine the Snyk SAST analysis behavior against the input fully qualified name.", "enum": [ - "project", - "environment" + "flows_through_sanitizer", + "if_true_sanitizer", + "if_false_sanitizer", + "any_usage_sanitizer" ], - "example": "project", "type": "string" }, - "ScanRelationships": { - "additionalProperties": true, - "description": "Scan relationships", - "example": { - "environment": { - "data": { - "id": "12000000-0000-0000-0000-000000000000", - "type": "environment" - }, - "links": { - "related": "/path/to/\u003crelated resource\u003e/\u003crelated-id\u003e?version=\u003cresolved version\u003e\u0026..." - } + "SastRuleExtensionsResponse": { + "items": { + "$ref": "#/components/schemas/SastRuleExtensionResponse" + }, + "type": "array" + }, + "SastRuleExtensionsResponseBody": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/SastRuleExtensionsResponse" }, - "organization": { - "data": { - "id": "10000000-0000-0000-0000-000000000000", - "type": "organization" - }, - "links": { - "related": "/path/to/\u003crelated resource\u003e/\u003crelated-id\u003e?version=\u003cresolved version\u003e\u0026..." - } + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" } }, + "required": [ + "data", + "jsonapi", + "links" + ], "type": "object" }, - "ScanType": { - "example": "scan", - "type": "string" + "SastScanConfiguration": { + "description": "Scan configuration parameters for the SAST scanner.", + "type": "object" }, - "ScmRepoLocator": { - "description": "ScmRepoLocator locates a test subject by SCM repository coordinates.", + "SastTestChangeItem": { + "additionalProperties": false, "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.", + "file_path": { + "description": "The relative path to the primary file associated with the finding", + "example": "src/main/java/DemoController.java", "type": "string" }, - "type": { - "enum": [ - "scm_repo" - ], + "location": { + "$ref": "#/components/schemas/SastTestChangeItemLocation" + }, + "priority_score": { + "description": "The calculated priority score for the finding, indicating its relative importance. Scores range from 0 to 1000.", + "example": 856, + "format": "int32", + "maximum": 1000, + "type": "integer" + }, + "rule_id": { + "description": "The SARIF result.ruleId for the finding, in the format \"\u003clanguage\u003e/\u003cshort_rule_name\u003e\" (e.g. \"javascript/XSS\"). The language prefix can be stripped by the consumer to derive the short rule name.", + "example": "javascript/XSS", "type": "string" }, - "url": { - "description": "URL of the SCM repository.", - "format": "uri", + "severity": { + "description": "Severity level of the issue.", + "enum": [ + "high", + "medium", + "low" + ], + "example": "medium", "type": "string" } }, "required": [ - "type", - "url" + "rule_id", + "location", + "severity", + "priority_score", + "file_path" ], "type": "object" }, - "ScmResource": { + "SastTestChangeItemLocation": { + "additionalProperties": false, + "description": "Code region where the finding was found.", "properties": { - "commit": { - "maxLength": 1024, - "type": "string" - }, - "file_patterns": { - "items": { - "type": "string" - }, - "maxItems": 20, - "type": "array" - }, - "integration_id": { - "format": "uuid", - "type": "string" + "end_column": { + "example": 25, + "format": "int32", + "type": "integer" }, - "ref": { - "maxLength": 1024, - "type": "string" + "end_line": { + "example": 345, + "format": "int32", + "type": "integer" }, - "repo_url": { - "format": "url", - "maxLength": 1024, - "type": "string" + "start_column": { + "example": 10, + "format": "int32", + "type": "integer" }, - "type": { - "enum": [ - "scm" - ], - "type": "string" + "start_line": { + "example": 345, + "format": "int32", + "type": "integer" } }, "required": [ - "type", - "repo_url", - "integration_id" + "start_line", + "start_column", + "end_line", + "end_column" ], "type": "object" }, - "Scopes": { - "description": "The scopes this app is allowed to request during authorization.", - "items": { - "minLength": 1, - "type": "string" + "SastTestRequestBody": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/TestRequestBodyData" + } }, - "minItems": 1, - "type": "array" + "required": [ + "data" + ], + "type": "object" }, - "SearchAttributesObject": { + "SastTestRequestDataAttributes": { + "additionalProperties": false, "properties": { - "attribute": { - "description": "Name of the Asset attribute to filter on, not required if a logical operator is used.\n\n**Tags Filtering:**\n\nThe API supports filtering on tags using dot notation:\n\n- **Tags**: `tags.{tagName}` - Filter by tag keys (e.g., `tags.environment`, `tags.team`, `tags.owner`)\n", - "oneOf": [ - { - "enum": [ - "id", - "type", - "removed", - "name", - "repository_url", - "file_path", - "sources", - "risk_factors", - "repository_freshness", - "browse_url", - "image_id", - "image_digests", - "image_tags", - "image_repositories", - "image_registries", - "labels", - "class", - "organizations", - "created_at", - "updated_at" - ], - "type": "string" - }, - { - "description": "Tag attribute in the format `tags.{tagName}`", - "pattern": "^tags\\.[a-zA-Z0-9_-]{1,30}$", - "type": "string" - } - ] + "fully_qualified_name": { + "$ref": "#/components/schemas/SastRuleExtensionFullyQualifiedName" }, - "operator": { - "description": "Required, name of the Operator for the query", - "enum": [ - "and", - "or", - "equal", - "not_equal", - "contains", - "not_contains", - "starts_with", - "ends_with", - "in", - "not_in", - "greater_than", - "lower_than", - "equal_or_greater_than", - "equal_or_lower_than" - ], - "type": "string" + "org_id": { + "$ref": "#/components/schemas/OrgID" }, - "values": { - "description": "Required values, which can be strings, dates, integers, booleans, or nested attributes", - "items": { - "oneOf": [ - { - "description": "A string value", - "type": "string" - }, - { - "description": "A date value in ISO 8601 format", - "format": "date", - "type": "string" - }, - { - "description": "An integer value", - "type": "integer" - }, - { - "$ref": "#/components/schemas/SearchAttributesObject" - }, - { - "description": "A boolean value", - "type": "boolean" - } - ] - }, - "type": "array" + "project_id": { + "$ref": "#/components/schemas/ProjectID" + }, + "rule_keys": { + "$ref": "#/components/schemas/TestRuleKeys" + }, + "type": { + "$ref": "#/components/schemas/SastRuleExtensionTypes" } }, "required": [ - "operator", - "values" + "project_id", + "org_id", + "fully_qualified_name", + "rule_keys", + "type" ], "type": "object" }, - "SearchObject": { - "description": "The request body can be empty or include query parameters.", + "SastTestResponseBody": { + "additionalProperties": false, "properties": { - "query": { + "data": { "properties": { "attributes": { - "$ref": "#/components/schemas/SearchAttributesObject" + "additionalProperties": false, + "properties": { + "code": { + "description": "An error catalog code to identify the error.", + "example": "SNYK-0009", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to the test error status.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The status of the impact test.", + "enum": [ + "STARTED", + "COMPLETED", + "ERRORED" + ], + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "example": { + "self": "https://example.com/api/this_resource" + }, + "properties": { + "self": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "type": { + "description": "The type identifier for the \"tests\" resource.", + "enum": [ + "tests" + ], + "type": "string" } }, "required": [ - "attributes" + "type", + "id", + "attributes", + "links" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + }, + "SastTestResultsAddedFindings": { + "additionalProperties": false, + "properties": { + "changes": { + "description": "Details of the findings added.", + "items": { + "$ref": "#/components/schemas/SastTestChangeItem" + }, + "type": "array" + }, + "count": { + "description": "The total number of findings added as a result of the rule extension.", + "example": 4, + "format": "int32", + "type": "integer" } }, "required": [ - "query" + "count", + "changes" ], "type": "object" }, - "SecretAttributes": { + "SastTestResultsData": { "additionalProperties": false, "properties": { - "encrypted": { - "type": "string" + "attributes": { + "$ref": "#/components/schemas/SastTestResultsDataAttributes" }, - "expires_at": { - "format": "date-time", + "id": { + "description": "The test id of the resource.", + "example": "2e31dbe3-2f5f-432c-aab8-d7d51e1078cd", + "format": "uuid", "type": "string" }, - "nonce": { - "type": "string" + "type": { + "$ref": "#/components/schemas/TestResultsType" } }, "required": [ - "nonce", - "encrypted", - "expires_at" + "type", + "id", + "attributes" ], "type": "object" }, - "SecretsScanConfiguration": { + "SastTestResultsDataAttributes": { + "additionalProperties": false, + "properties": { + "added_findings": { + "$ref": "#/components/schemas/SastTestResultsAddedFindings" + }, + "fully_qualified_name": { + "$ref": "#/components/schemas/SastRuleExtensionFullyQualifiedName" + }, + "org_id": { + "$ref": "#/components/schemas/OrgID" + }, + "project_commit_sha": { + "$ref": "#/components/schemas/ProjectCommitSha" + }, + "project_id": { + "$ref": "#/components/schemas/ProjectID" + }, + "removed_findings": { + "$ref": "#/components/schemas/SastTestResultsRemovedFindings" + }, + "rule_keys": { + "$ref": "#/components/schemas/TestRuleKeys" + }, + "total_count": { + "description": "The total number of findings added and removed as a result of the rule extension.", + "example": 4, + "format": "int32", + "type": "integer" + }, + "type": { + "$ref": "#/components/schemas/SastRuleExtensionTypes" + } + }, + "required": [ + "total_count", + "project_commit_sha", + "project_id", + "org_id", + "fully_qualified_name", + "rule_keys", + "type" + ], "type": "object" }, - "SelfLink": { + "SastTestResultsRemovedFindings": { "additionalProperties": false, - "example": { - "self": "https://example.com/api/this_resource" - }, "properties": { - "self": { - "$ref": "#/components/schemas/LinkProperty" + "changes": { + "description": "Details of the findings removed.", + "items": { + "$ref": "#/components/schemas/SastTestChangeItem" + }, + "type": "array" + }, + "count": { + "description": "The total number of findings removed as a result of the rule extension.", + "example": 4, + "format": "int32", + "type": "integer" } }, + "required": [ + "count", + "changes" + ], "type": "object" }, - "ServiceAccount": { + "SastTestResultsResponseBody": { "additionalProperties": false, "properties": { - "attributes": { - "additionalProperties": false, + "data": { + "$ref": "#/components/schemas/SastTestResultsData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "required": [ + "data", + "links" + ], + "type": "object" + }, + "SbomAttributesResponse": { + "allOf": [ + { + "$ref": "#/components/schemas/AssetBaseAttributes" + }, + { + "description": "Attributes specific to sbom.", "properties": { - "access_token": { - "description": "The Snyk access token for this service account. Only returned on creation, and only when auth_type is access_token..", - "type": "string" + "authors": { + "items": { + "$ref": "#/components/schemas/Party" + }, + "maxItems": 32, + "type": "array" }, - "access_token_expires_at": { - "description": "The expiry date of the access token. Only provided when auth_type is access_token.", - "example": "2025-08-16T00:00:00Z", - "format": "date-time", + "component": { + "$ref": "#/components/schemas/Component" + }, + "document_uid": { + "description": "Document UID (CycloneDX serialNumber, SPDX documentNamespace)", + "maxLength": 2048, "type": "string" }, - "access_token_ttl_seconds": { - "description": "The time, in seconds, that an oauth access token will be valid for. Defaults to 1hr if unset. Only provided when auth_type is oauth_client_secret or oauth_private_key_jwt.", + "document_version": { + "description": "CycloneDX `version`, null for SPDX", + "format": "int32", + "nullable": true, "type": "number" }, - "api_key": { - "description": "The Snyk API Key for this service account. Only returned on creation, and only when auth_type is api_key.", + "file_path": { + "description": "SBOM file path", + "maxLength": 2048, "type": "string" }, - "auth_type": { - "description": "The authentication strategy for the service account:\n * api_key - Regular Snyk API Key.\n * oauth_client_secret - OAuth2 client_credentials grant, which returns a client secret that can be used to retrieve an oauth access token.\n * oauth_private_key_jwt - OAuth2 client_credentials grant, using private_key_jwt client_assertion as laid out in OIDC Connect Core 1.0, section 9.\n * access_token - Access tokens are long-lived, can be used more than once for increased flexibility, and have expiries for enhanced security.", - "enum": [ - "api_key", - "oauth_client_secret", - "oauth_private_key_jwt", - "access_token" - ], + "integrity_hash": { + "description": "Integrity hash of the SBOM document", + "maxLength": 256, "type": "string" }, - "client_id": { - "description": "The service account's attached client-id. Used to request an access-token. Only provided when auth_type is oauth_client_secret or oauth_private_key_jwt.", - "type": "string" + "lifecycles": { + "description": "Lifecycles, e.x. one of cyclonedx.model.lifecycle.LifecyclePhase ('design', 'pre-build', etc)", + "items": { + "maxLength": 64, + "type": "string" + }, + "maxItems": 16, + "type": "array" }, - "client_secret": { - "description": "The client secret used for obtaining oauth access tokens. Only sent on creation of new service accounts and cannot be retrieved thereafter. Only provided when auth_type is oauth_client_secret.", + "name": { + "description": "Sbom name", + "maxLength": 256, "type": "string" }, - "created_at": { - "description": "The time at which the service account was created.", - "example": "2025-08-16T00:00:00Z", + "sbom_created_at": { + "description": "When the SBOM was generated, ISO 8601 format. Can be distinct from created_at", "format": "date-time", + "nullable": true, "type": "string" }, - "jwks_url": { - "description": "A JWKs URL used to verify signed JWT requests against. Must be https. Only provided when auth_type is oauth_private_key_jwt.", + "sbom_standard": { + "description": "SBOM standard / format used to generate this asset", + "enum": [ + "cyclonedx", + "spdx" + ], "type": "string" }, - "level": { - "description": "The level of access for the service account:\n * Group - the service account was created at the Group level.\n * Org - the service account was created at the Org level.", + "serialization": { + "description": "Serialization format used to encode this asset", "enum": [ - "Group", - "Org" + "json", + "xml", + "yaml" ], "type": "string" }, - "name": { - "description": "A human-friendly name of the service account.", + "spec_version": { + "description": "SBOM spec version as provided, for example 1.6, 2.3, 3.0.1.", + "maxLength": 32, "type": "string" }, - "role_id": { - "description": "The ID of the role which the Service Account is associated with.", - "format": "uuid", - "type": "string" + "tools": { + "items": { + "$ref": "#/components/schemas/Tool" + }, + "maxItems": 32, + "type": "array" } }, "required": [ "name", - "auth_type", - "role_id" + "sbom_standard", + "spec_version", + "serialization", + "document_uid" ], "type": "object" - }, - "id": { - "format": "uuid", + } + ] + }, + "SbomDocument": { + "additionalProperties": true, + "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" }, - "links": { - "$ref": "#/components/schemas/Links" + "locator": { + "allOf": [ + { + "$ref": "#/components/schemas/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", - "id", - "attributes" + "sbom_bundle_id", + "code_bundle_id", + "locator" ], "type": "object" }, - "ServiceAccount20240422": { + "SbomResource": { "additionalProperties": false, "properties": { - "default_org_context": { - "description": "ID of the default org for the service account.", + "id": { + "example": "b68b0b85-d039-4c05-abc0-04eb50ca0fe9", "format": "uuid", "type": "string" }, - "name": { - "description": "The name of the service account.", - "example": "user", - "type": "string" + "type": { + "$ref": "#/components/schemas/Types" } }, "required": [ - "name" + "id", + "type" ], "type": "object" }, - "SessionAttributes": { + "SbomResponse": { + "additionalProperties": false, "properties": { - "created_at": { - "format": "date-time", - "type": "string" + "data": { + "$ref": "#/components/schemas/SbomResource" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" } }, "required": [ - "created_at" + "jsonapi", + "data" ], "type": "object" }, - "SessionData": { - "additionalProperties": false, + "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": { - "attributes": { - "$ref": "#/components/schemas/SessionAttributes" + "locator": { + "allOf": [ + { + "$ref": "#/components/schemas/LocalPathLocator" + } + ], + "description": "Locate the local paths from which the SBOM and source code were derived." }, - "id": { - "$ref": "#/components/schemas/Id" + "sbom_bundle_id": { + "description": "The SBOM to test for vulnerable dependencies.", + "pattern": "^[a-fA-F0-9]{64}$", + "type": "string" }, "type": { - "$ref": "#/components/schemas/Type" + "enum": [ + "sbom" + ], + "type": "string" } }, "required": [ "type", - "id", - "attributes" + "sbom_bundle_id", + "locator" ], "type": "object" }, - "SettingsAttributes": { - "additionalProperties": false, + "SbomTestCreateAttributes": { "properties": { - "severity_threshold": { - "$ref": "#/components/schemas/SeverityThreshold" + "format": { + "type": "string" }, - "target_channel_id": { - "$ref": "#/components/schemas/TargetChannelId" + "sbom": { + "additionalProperties": true, + "type": "object" } }, "required": [ - "target_channel_id", - "severity_threshold" + "sbom" ], "type": "object" }, - "SettingsRequest": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/SettingsAttributes" - }, - "type": { - "enum": [ - "slack" - ], - "type": "string" - } - }, - "required": [ - "type", - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], + "SbomTestResultsAttributes": { + "additionalProperties": true, "type": "object" }, - "Severity": { - "description": "Indicate the severity of a finding discovered by a Test.", - "enum": [ - "critical", - "high", - "medium", - "low", - "none", - "other" - ], - "type": "string" + "ScaScanConfiguration": { + "description": "Scan configuration parameters for the SCA scanner.", + "type": "object" }, - "Severity3": { + "ScanAttributes": { + "description": "Scan attributes", + "example": { + "created_at": "2022-05-06T12:25:15-04:00", + "error": "", + "finished_at": "2022-05-06T12:25:15-04:00", + "kind": "user_initiated", + "options": { + "role_arn": "arn:aws:iam::123456789012:role/SnykCloud1234" + }, + "revision": 1, + "status": "success", + "updated_at": "2022-05-06T12:25:15-04:00" + }, "properties": { - "level": { - "description": "Level of severity calculated via vector", - "example": "medium", + "created_at": { + "description": "When the scan was created", + "example": "2022-05-06T12:25:15-04:00", + "format": "date-time", "type": "string" }, - "score": { - "description": "The CVSS score calculated from the vector, representing the severity of the vulnerability on a scale from 0 to 10.", - "example": 5.3, + "deleted_at": { + "format": "date-time", "nullable": true, - "type": "number" - }, - "source": { - "description": "The source of this severity. The value must be the id of a referenced problem or class, in which case that problem or class is the source of this issue. If source is omitted, this severity is sourced internally in the Snyk application.", - "example": "Snyk", "type": "string" }, - "type": { - "description": "Indicates if the CVSS item is primary or secondary. Clients should prefer the primary CVSS vector.", - "example": "primary", + "environment_id": { + "description": "Environment ID", + "example": "052781a7-17f6-494d-0000-25c8b509abcd", + "format": "uuid", "type": "string" }, - "vector": { - "description": "CVSS vector string detailing the metrics of a vulnerability.", - "example": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L", + "error": { + "description": "Error message if the scan failed", + "example": "could not start scan", "nullable": true, "type": "string" }, - "version": { - "description": "CVSS version being described.", - "example": "4.0", + "finished_at": { + "description": "When the scan finished", + "example": "2022-05-06T12:25:15-04:00", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "kind": { + "description": "Scan kind", + "enum": [ + "scheduled", + "user_initiated", + "event_driven", + null + ], + "example": "user_initiated", + "nullable": true, + "type": "string" + }, + "options": { + "example": { + "role_arn": "arn:aws:iam::123456789012:role/SnykCloud1234" + }, + "nullable": true, + "type": "object" + }, + "organization_id": { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "format": "uuid", + "type": "string" + }, + "partial_errors": { + "description": "Errors that didn't fail the scan", + "type": "string" + }, + "revision": { + "description": "Increment for each change to a scan", + "example": 1, + "type": "number" + }, + "status": { + "description": "Scan status", + "enum": [ + "queued", + "in_progress", + "success", + "error", + null + ], + "example": "in_progress", + "nullable": true, + "type": "string" + }, + "updated_at": { + "description": "When the scan was last updated", + "example": "2022-05-06T12:25:15-04:00", + "format": "date-time", + "nullable": true, "type": "string" } }, - "type": "object" - }, - "SeverityLevel": { - "enum": [ - "low", - "medium", - "high", - "critical" - ], - "type": "string", - "x-enum-varnames": [ - "Low", - "Medium", - "High", - "Critical" - ] - }, - "SeverityThreshold": { - "description": "Minimum Snyk issue severity to send a notification for, messages will not be sent for any issue below this value", - "enum": [ - "low", - "medium", - "high", - "critical" + "required": [ + "created_at", + "revision", + "kind", + "status", + "error" ], - "example": "high", - "type": "string" + "type": "object" }, - "SlackChannel": { + "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.", + "example": { + "secrets": {} + }, "properties": { - "attributes": { - "properties": { - "name": { - "description": "Name of the Slack Channel", - "example": "general", - "type": "string" - }, - "type": { - "description": "Channel type", - "enum": [ - "public", - "private", - "direct_message", - "multiparty_direct_message" - ], - "type": "string" - } - }, - "type": "object" + "container": { + "$ref": "#/components/schemas/ContainerScanConfiguration" }, - "id": { - "example": "slack://channel?team=T123456\u0026id=C123456", - "format": "uri", - "type": "string" + "iac": { + "$ref": "#/components/schemas/IacScanConfiguration" }, - "type": { - "example": "slack_channel", - "type": "string" + "sast": { + "$ref": "#/components/schemas/SastScanConfiguration" + }, + "sca": { + "$ref": "#/components/schemas/ScaScanConfiguration" + }, + "secrets": { + "$ref": "#/components/schemas/SecretsScanConfiguration" } }, "type": "object" }, - "SlackDefaultSettingsData": { + "ScanCreateAttributes": { + "additionalProperties": false, + "description": "Scan create attributes", + "type": "object" + }, + "ScanCreateRelationships": { + "description": "Scan create relationships", "properties": { - "attributes": { - "additionalProperties": false, + "environment": { "properties": { - "severity_threshold": { - "$ref": "#/components/schemas/SeverityThreshold" - }, - "target_channel_id": { - "$ref": "#/components/schemas/TargetChannelId" - }, - "target_channel_name": { - "$ref": "#/components/schemas/TargetChannelName" + "data": { + "example": { + "id": "12000000-0000-0000-0000-000000000000", + "type": "environment" + }, + "properties": { + "id": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" } }, - "required": [ - "target_channel_id", - "target_channel_name", - "severity_threshold" - ], "type": "object" - }, - "id": { - "$ref": "#/components/schemas/Uuid" - }, - "type": { - "example": "slack", - "type": "string" } }, "type": "object" }, - "Slots": { + "ScanEngine": { + "description": "Scan engine information associated with an asset", "properties": { - "disclosure_time": { - "description": "The time at which this vulnerability was disclosed.", - "example": "2022-06-16T13:51:13Z", + "issues": { + "$ref": "#/components/schemas/IssueCounts" + }, + "last_seen": { + "description": "When the scan engine was last seen", "format": "date-time", "type": "string" }, - "exploit_details": { - "$ref": "#/components/schemas/ExploitDetails" + "link": { + "description": "Link to the scan engine details", + "format": "uri", + "maxLength": 1024, + "type": "string" }, - "publication_time": { - "description": "The time at which this vulnerability was published.", - "example": "2022-06-16T14:00:24.315507Z", + "name": { + "description": "Name of the scan engine", + "maxLength": 256, "type": "string" }, - "references": { - "items": { - "properties": { - "title": { - "description": "Descriptor for an external reference to the issue", - "type": "string" - }, - "url": { - "description": "URL for an external reference to the issue", - "type": "string" - } - }, - "type": "object" + "type": { + "description": "Type of scan engine", + "enum": [ + "sca", + "sast", + "container", + "iac", + "secrets" + ], + "type": "string" + } + }, + "required": [ + "type", + "name", + "last_seen", + "issues" + ], + "type": "object" + }, + "ScanItemType": { + "enum": [ + "project", + "environment" + ], + "example": "project", + "type": "string" + }, + "ScanRelationships": { + "additionalProperties": true, + "description": "Scan relationships", + "example": { + "environment": { + "data": { + "id": "12000000-0000-0000-0000-000000000000", + "type": "environment" }, - "type": "array" + "links": { + "related": "/path/to/\u003crelated resource\u003e/\u003crelated-id\u003e?version=\u003cresolved version\u003e\u0026..." + } + }, + "organization": { + "data": { + "id": "10000000-0000-0000-0000-000000000000", + "type": "organization" + }, + "links": { + "related": "/path/to/\u003crelated resource\u003e/\u003crelated-id\u003e?version=\u003cresolved version\u003e\u0026..." + } } }, "type": "object" }, - "SnykReferenceResource": { + "ScanType": { + "example": "scan", + "type": "string" + }, + "ScmBundleStoreAttributes": { "properties": { - "ref_id": { + "target_id": { + "description": "The id of the target which has been imported into Snyk.", "format": "uuid", "type": "string" }, - "reference_type": { - "enum": [ - "target", - "project", - "asset" - ], + "target_version": { + "description": "The branch or commit hash to scan", + "example": "main", "type": "string" + } + }, + "required": [ + "target_id" + ], + "type": "object" + }, + "ScmBundleStoreData": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/ScmBundleStoreAttributes" }, "type": { "enum": [ - "snyk_ref" + "ai_bom_scm_bundle" ], "type": "string" } }, "required": [ "type", - "reference_type", - "ref_id" + "attributes" ], "type": "object" }, - "SonarqubeAttributes": { + "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": { - "sonarqube_api_token": { - "format": "uuid", + "branch": { + "maxLength": 256, "type": "string" }, - "sonarqube_host_url": { - "example": "sonarqube.customer.com", + "commit_ref": { + "maxLength": 1024, + "type": "string" + }, + "repo_url": { + "maxLength": 1024, "type": "string" } }, - "required": [ - "sonarqube_host_url", - "sonarqube_api_token" - ], "type": "object" }, - "Suppression": { - "description": "Details about a finding's suppression in test results.\n\nSuppressed findings do not contribute to the test outcome, but they are still\nprovided in the results.", + "ScmRepoLocator": { + "description": "ScmRepoLocator locates a test subject by SCM repository coordinates.", "properties": { - "created_at": { - "description": "When the suppression was first created.", - "format": "date-time", + "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" }, - "expires_at": { - "description": "When the suppression will expire.", - "format": "date-time", + "type": { + "enum": [ + "scm_repo" + ], "type": "string" }, - "justification": { - "description": "Reason given for an ignore pending approval.", + "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 which\nmay not already be imported into Snyk", + "example": { + "commit": "8dbd1ea7201a0d49603467981075a633d91e40b9", + "file_patterns": [], + "integration_id": "00000000-0000-0000-0000-000000000000", + "ref": "main", + "repo_url": "https://github.com/example/repo", + "type": "scm" + }, + "properties": { + "commit": { + "description": "Commit hash to reference specifically.", + "maxLength": 1024, "type": "string" }, - "path": { - "description": "Dependency path to the vulnerable package to be suppressed.\n\nIf not provided, the suppression will apply to all packages with the given\nvulnerability ID.", + "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": { - "type": "string" + "$ref": "#/components/schemas/String256" }, + "maxItems": 20, "type": "array" }, - "policy": { - "allOf": [ - { - "$ref": "#/components/schemas/PolicyRef" - } - ], - "description": "Policy responsible for the state of suppression represented here, if available." + "integration_id": { + "description": "Integration ID assigned to the specific SCM.\nThis ID can be found in the Snyk UI by navigating to\n\"Settings\" \u003e \"Integrations\" \u003e \"\u003cYour SCM\u003e\"\n\nThe ID will be displayed under \"General\" \u003e \"Integration ID\"", + "format": "uuid", + "type": "string" }, - "skipIfFixable": { - "description": "Skip the suppression if an actual fix is available.", - "type": "boolean" + "ref": { + "description": "Ref contains a branch name or other non-commit hash reference\nto a version of the content.", + "maxLength": 1024, + "type": "string" }, - "status": { - "allOf": [ - { - "$ref": "#/components/schemas/SuppressionStatus" - } + "repo_url": { + "description": "URL at which the repository can be found in the SCM.", + "example": "https://github.com/snyk/cli", + "maxLength": 1024, + "type": "string" + }, + "type": { + "enum": [ + "scm" ], - "description": "Status of the suppression." + "type": "string" } }, "required": [ - "status" + "type", + "repo_url", + "integration_id" ], "type": "object" }, - "SuppressionStatus": { - "description": "Status of a suppression on a finding.", + "Scopes": { + "description": "The scopes this app is allowed to request during authorization.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + }, + "SdlcStage": { + "description": "SDLC stage where the test was initiated.", "enum": [ - "ignored", - "pending_ignore_approval", + "ide", + "cli", + "pr_check", + "ci_cd", + "mcp", "other" ], "type": "string" }, - "Tag": { + "SearchAttributesObject": { "properties": { - "tag_type": { + "attribute": { + "description": "Name of the Asset attribute to filter on, not required if a logical operator is used.\n\n**Tags Filtering:**\n\nThe API supports filtering on tags using dot notation:\n\n- **Tags**: `tags.{tagName}` - Filter by tag keys (e.g., `tags.environment`, `tags.team`, `tags.owner`)\n", + "oneOf": [ + { + "enum": [ + "id", + "type", + "removed", + "name", + "repository_url", + "file_path", + "sources", + "risk_factors", + "repository_freshness", + "browse_url", + "image_id", + "image_digests", + "image_tags", + "image_repositories", + "image_registries", + "labels", + "class", + "organizations", + "created_at", + "updated_at" + ], + "type": "string" + }, + { + "description": "Tag attribute in the format `tags.{tagName}`", + "pattern": "^tags\\.[a-zA-Z0-9_-]{1,30}$", + "type": "string" + } + ] + }, + "operator": { + "description": "Required, name of the Operator for the query", + "enum": [ + "and", + "or", + "equal", + "not_equal", + "contains", + "not_contains", + "starts_with", + "ends_with", + "in", + "not_in", + "greater_than", + "lower_than", + "equal_or_greater_than", + "equal_or_lower_than" + ], "type": "string" }, - "tag_values": { + "values": { + "description": "Required values, which can be strings, dates, integers, booleans, or nested attributes", "items": { - "type": "string" + "oneOf": [ + { + "description": "A string value", + "type": "string" + }, + { + "description": "A date value in ISO 8601 format", + "format": "date", + "type": "string" + }, + { + "description": "An integer value", + "type": "integer" + }, + { + "$ref": "#/components/schemas/SearchAttributesObject" + }, + { + "description": "A boolean value", + "type": "boolean" + } + ] }, "type": "array" } }, "required": [ - "tag_type", - "tag_values" + "operator", + "values" ], "type": "object" }, - "TargetChannelId": { - "example": "slack://channel?team=team-id\u0026id=channel-id", - "format": "uri", - "type": "string" - }, - "TargetChannelName": { - "example": "channel-name", - "minLength": 1, - "type": "string" - }, - "Tenant": { + "SearchObject": { + "description": "The request body can be empty or include query parameters.", "properties": { - "data": { + "query": { "properties": { - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "type": { - "enum": [ - "tenant" - ], - "type": "string" + "attributes": { + "$ref": "#/components/schemas/SearchAttributesObject" } }, "required": [ - "id", - "type" + "attributes" ], "type": "object" } }, + "required": [ + "query" + ], "type": "object" }, - "TenantAttributes": { + "SecretAttributes": { + "additionalProperties": false, "properties": { - "created_at": { - "description": "The time the tenant was created.", - "example": "2022-03-16T00:00:00Z", - "format": "date-time", - "type": "string" - }, - "name": { - "description": "The display name of the tenant.", - "example": "My Tenant", + "encrypted": { "type": "string" }, - "slug": { - "description": "The canonical (unique and URL-friendly) name of the tenant.", - "example": "my-tenant", + "expires_at": { + "format": "date-time", "type": "string" }, - "updated_at": { - "description": "The time the tenant was last modified.", - "example": "2022-03-16T00:00:00Z", - "format": "date-time", + "nonce": { "type": "string" } }, "required": [ - "name", - "slug", - "created_at", - "updated_at" + "nonce", + "encrypted", + "expires_at" ], "type": "object" }, - "TenantId__0": { - "description": "Unique identifier for a tenant.", - "example": "00000000-0000-0000-0000-000000000000", - "format": "uuid", - "type": "string" - }, - "TenantMembershipId": { - "description": "Unique identifier for a tenant membership.", - "example": "00000000-0000-0000-0000-000000000000", - "format": "uuid", - "type": "string" - }, - "TenantMembershipResponseAttributes": { + "SecretsConfiguration": { "additionalProperties": false, "properties": { - "created_at": { - "$ref": "#/components/schemas/CreatedAt" - } - }, - "required": [ - "created_at" - ], - "type": "object" - }, - "TenantMembershipResponseDataObject": { - "properties": { - "attributes": { - "$ref": "#/components/schemas/TenantMembershipResponseAttributes" - }, - "id": { - "$ref": "#/components/schemas/TenantMembershipId" - }, - "relationships": { - "$ref": "#/components/schemas/ReadTenantMembershipResponseRelationships" - }, "type": { - "$ref": "#/components/schemas/TenantMembershipType" + "enum": [ + "addition" + ], + "type": "string" } }, "required": [ - "id", - "type", - "attributes", - "relationships" + "type" ], "type": "object" }, - "TenantMembershipTenantRelationshipDataFull": { + "SecretsEnablement": { "additionalProperties": false, "properties": { "attributes": { "additionalProperties": false, "properties": { - "name": { - "$ref": "#/components/schemas/TenantName" + "secrets_enabled": { + "type": "boolean" } }, "required": [ - "name" + "secrets_enabled" ], "type": "object" }, "id": { - "$ref": "#/components/schemas/TenantId__0" + "format": "uuid", + "type": "string" }, "type": { - "$ref": "#/components/schemas/TenantType" + "type": "string" } }, "required": [ - "id", "type", + "id", "attributes" ], "type": "object" }, - "TenantMembershipTenantRelationshipFull": { - "additionalProperties": false, - "description": "The tenant to which the membership applies.", - "properties": { - "data": { - "$ref": "#/components/schemas/TenantMembershipTenantRelationshipDataFull" - } - }, - "required": [ - "data" + "SecretsRegexKind": { + "description": "Kind value for secrets regex rule extensions.", + "enum": [ + "secrets_regex" ], - "type": "object" + "type": "string" }, - "TenantMembershipTenantRoleRelationshipBasic": { + "SecretsRegexSignature": { "additionalProperties": false, - "description": "The role held by the user in the tenant.", "properties": { - "data": { - "$ref": "#/components/schemas/TenantMembershipTenantRoleRelationshipDataBasic" + "regex_pattern": { + "description": "A RE2-compatible regular expression pattern for detecting secrets in source code.", + "maxLength": 1000, + "type": "string" } }, "required": [ - "data" + "regex_pattern" ], "type": "object" }, - "TenantMembershipTenantRoleRelationshipDataBasic": { + "SecretsRuleExtensionRequest": { "additionalProperties": false, "properties": { - "id": { - "$ref": "#/components/schemas/TenantRoleId" - }, - "type": { - "$ref": "#/components/schemas/TenantRoleType" + "data": { + "$ref": "#/components/schemas/SecretsRuleExtensionRequestData" } }, "required": [ - "id", - "type" + "data" ], "type": "object" }, - "TenantMembershipTenantRoleRelationshipDataFull": { + "SecretsRuleExtensionRequestData": { "additionalProperties": false, "properties": { "attributes": { - "additionalProperties": false, - "properties": { - "name": { - "$ref": "#/components/schemas/TenantRoleName" + "oneOf": [ + { + "$ref": "#/components/schemas/CreateSecretsRuleExtensionAttributes" + }, + { + "$ref": "#/components/schemas/CopyRuleExtensionRequestAttributes" } - }, - "required": [ - "name" - ], - "type": "object" - }, - "id": { - "$ref": "#/components/schemas/TenantRoleId" + ] }, "type": { - "$ref": "#/components/schemas/TenantRoleType" + "$ref": "#/components/schemas/RuleExtensionRequestType" } }, "required": [ - "id", "type", "attributes" ], "type": "object" }, - "TenantMembershipTenantRoleRelationshipFull": { + "SecretsRuleExtensionResponseAttributes": { "additionalProperties": false, - "description": "The role held by the user in the tenant.", "properties": { - "data": { - "$ref": "#/components/schemas/TenantMembershipTenantRoleRelationshipDataFull" + "configuration": { + "$ref": "#/components/schemas/SecretsConfiguration" + }, + "created_at": { + "$ref": "#/components/schemas/RuleExtensionCreatedAt" + }, + "created_by": { + "description": "User ID of the user who created the Secrets rule extension", + "format": "uuid", + "type": "string" + }, + "description": { + "$ref": "#/components/schemas/RuleExtensionDescription" + }, + "kind": { + "$ref": "#/components/schemas/SecretsRegexKind" + }, + "published_at": { + "$ref": "#/components/schemas/RuleExtensionPublishedAt" + }, + "published_by": { + "$ref": "#/components/schemas/RuleExtensionPublishedBy" + }, + "signature": { + "$ref": "#/components/schemas/SecretsRegexSignature" + }, + "status": { + "$ref": "#/components/schemas/RuleExtensionStatus" + }, + "updated_at": { + "$ref": "#/components/schemas/RuleExtensionUpdatedAt" + }, + "updated_by": { + "description": "User ID of the user who updated the Secrets rule extension", + "format": "uuid", + "type": "string" } }, "required": [ - "data" + "status", + "kind", + "signature", + "configuration", + "created_at", + "updated_at", + "created_by", + "updated_by", + "published_at", + "published_by" ], "type": "object" }, - "TenantMembershipType": { - "description": "Resource type for tenant memberships.", - "enum": [ - "tenant_membership" - ], - "type": "string" - }, - "TenantMembershipUserRelationshipDataAttributes": { + "SecretsRuleExtensionResponseBody": { "additionalProperties": false, - "properties": { - "account_type": { - "$ref": "#/components/schemas/UserAccountType" - }, - "active": { - "$ref": "#/components/schemas/UserIsActive" + "example": { + "data": { + "attributes": { + "configuration": { + "type": "addition" + }, + "created_at": "2026-04-09T10:00:00Z", + "created_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "description": "Detect AWS access key IDs in source code.", + "kind": "secrets_regex", + "published_at": "2026-04-10T09:15:00Z", + "published_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a", + "signature": { + "regex_pattern": "(?i)AKIA[0-9A-Z]{16}" + }, + "status": "published", + "updated_at": "2026-04-10T09:15:00Z", + "updated_by": "758769f2-5b3a-41eb-b7c2-20bd785be49a" + }, + "id": "b7fe5082-2e58-5795-b56e-8e1b483023f1", + "type": "rule_extensions" }, - "email": { - "$ref": "#/components/schemas/UserEmail" + "jsonapi": { + "version": "1.0" }, - "login_method": { - "$ref": "#/components/schemas/UserLoginMethod" + "links": { + "self": "/rest/groups/0188104e-7aea-4047-b383-74d8b42d7452/secrets/rule_extensions/b7fe5082-2e58-5795-b56e-8e1b483023f1" + } + }, + "properties": { + "data": { + "$ref": "#/components/schemas/SecretsRuleExtensionResponseItem" }, - "name": { - "$ref": "#/components/schemas/UserName" + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" }, - "username": { - "$ref": "#/components/schemas/UserUsername" + "links": { + "$ref": "#/components/schemas/SelfLink" } }, "required": [ - "name", - "email", - "login_method" + "data", + "jsonapi", + "links" ], "type": "object" }, - "TenantMembershipUserRelationshipDataFullWithMeta": { + "SecretsRuleExtensionResponseItem": { "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/TenantMembershipUserRelationshipDataAttributes" + "$ref": "#/components/schemas/SecretsRuleExtensionResponseAttributes" }, "id": { - "$ref": "#/components/schemas/UserId" - }, - "meta": { - "additionalProperties": false, - "properties": { - "tenant_owner": { - "description": "Whether the user is the owner of the tenant.", - "type": "boolean" - } - }, - "type": "object" + "$ref": "#/components/schemas/SastRuleExtensionId" }, "type": { - "$ref": "#/components/schemas/UserType" + "$ref": "#/components/schemas/RuleExtensionRequestType" } }, "required": [ @@ -19485,73 +26344,209 @@ ], "type": "object" }, - "TenantMembershipUserRelationshipFullWithMeta": { + "SecretsRuleExtensionsResponse": { + "items": { + "$ref": "#/components/schemas/SecretsRuleExtensionResponseItem" + }, + "type": "array" + }, + "SecretsRuleExtensionsResponseBody": { "additionalProperties": false, - "description": "The user to which the membership belongs.", "properties": { "data": { - "$ref": "#/components/schemas/TenantMembershipUserRelationshipDataFullWithMeta" + "$ref": "#/components/schemas/SecretsRuleExtensionsResponse" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" } }, "required": [ - "data" + "data", + "jsonapi", + "links" ], "type": "object" }, - "TenantName": { - "description": "The display name of the tenant.", - "example": "My Tenant", - "type": "string" + "SecretsScanConfiguration": { + "description": "Scan configuration parameters for the Secrets scanner.", + "type": "object" }, - "TenantRelationships": { + "SecurityDetails": { + "additionalProperties": false, + "description": "Security signals for the package", "properties": { - "owner": { - "properties": { - "data": { + "description": { + "description": "Human-readable explanation of the security rating", + "type": "string" + }, + "direct_vulnerabilities": { + "description": "Whether the package has direct vulnerabilities", + "type": "boolean" + }, + "direct_vulnerabilities_counts": { + "$ref": "#/components/schemas/DirectVulnerabilitiesCounts" + }, + "direct_vulnerabilities_total": { + "description": "Total count of direct vulnerabilities (\u003e= 0)", + "minimum": 0, + "type": "integer" + }, + "rating": { + "description": "Security rating based on known vulnerabilities", + "enum": [ + "No known security issues", + "Minor security issues found", + "Security issues found" + ], + "type": "string" + } + }, + "required": [ + "direct_vulnerabilities", + "direct_vulnerabilities_total" + ], + "type": "object" + }, + "SelfLink": { + "additionalProperties": false, + "example": { + "self": "https://example.com/api/this_resource" + }, + "properties": { + "self": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, "properties": { - "id": { - "example": "b667f176-df52-4b0a-9954-117af6b05ab7", - "format": "uuid", + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", "type": "string" }, - "type": { - "description": "The type of the resource. Always 'user'.", - "example": "user", - "type": "string" + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" } }, "required": [ - "id", - "type" + "href" ], "type": "object" } - }, - "required": [ - "data" - ], - "type": "object" + ] } }, "type": "object" }, - "TenantResponseData": { + "ServiceAccount": { "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/TenantAttributes" + "additionalProperties": false, + "properties": { + "access_token": { + "description": "The Snyk access token for this service account. Only returned on creation, and only when auth_type is access_token..", + "type": "string" + }, + "access_token_expires_at": { + "description": "The expiry date of the access token. Only provided when auth_type is access_token.", + "example": "2025-08-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "access_token_ttl_seconds": { + "description": "The time, in seconds, that an oauth access token will be valid for. Defaults to 1hr if unset. Only provided when auth_type is oauth_client_secret or oauth_private_key_jwt.", + "type": "number" + }, + "api_key": { + "description": "The Snyk API Key for this service account. Only returned on creation, and only when auth_type is api_key.", + "type": "string" + }, + "auth_type": { + "description": "The authentication strategy for the service account:\n * api_key - Regular Snyk API Key.\n * oauth_client_secret - OAuth2 client_credentials grant, which returns a client secret that can be used to retrieve an oauth access token.\n * oauth_private_key_jwt - OAuth2 client_credentials grant, using private_key_jwt client_assertion as laid out in OIDC Connect Core 1.0, section 9.\n * access_token - Access tokens are long-lived, can be used more than once for increased flexibility, and have expiries for enhanced security.", + "enum": [ + "api_key", + "oauth_client_secret", + "oauth_private_key_jwt", + "access_token" + ], + "type": "string" + }, + "client_id": { + "description": "The service account's attached client-id. Used to request an access-token. Only provided when auth_type is oauth_client_secret or oauth_private_key_jwt.", + "type": "string" + }, + "client_secret": { + "description": "The client secret used for obtaining oauth access tokens. Only sent on creation of new service accounts and cannot be retrieved thereafter. Only provided when auth_type is oauth_client_secret.", + "type": "string" + }, + "created_at": { + "description": "The time at which the service account was created.", + "example": "2025-08-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "jwks_url": { + "description": "A JWKs URL used to verify signed JWT requests against. Must be https. Only provided when auth_type is oauth_private_key_jwt.", + "type": "string" + }, + "level": { + "description": "The level of access for the service account:\n * Group - the service account was created at the Group level.\n * Org - the service account was created at the Org level.", + "enum": [ + "Group", + "Org" + ], + "type": "string" + }, + "name": { + "description": "A human-friendly name of the service account.", + "type": "string" + }, + "role_id": { + "description": "The ID of the role which the Service Account is associated with.", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "name", + "auth_type", + "role_id" + ], + "type": "object" }, "id": { - "description": "The Snyk ID of the tenant.", - "example": "59d6d97e-3106-4ebb-b608-352fad9c5b34", "format": "uuid", "type": "string" }, - "relationships": { - "$ref": "#/components/schemas/TenantRelationships" + "links": { + "$ref": "#/components/schemas/Links" }, "type": { - "$ref": "#/components/schemas/Types" + "type": "string" } }, "required": [ @@ -19561,845 +26556,703 @@ ], "type": "object" }, - "TenantRoleId": { - "description": "Unique identifier for a tenant role.", - "example": "00000000-0000-0000-0000-000000000000", - "format": "uuid", - "type": "string" - }, - "TenantRoleMeta": { + "ServiceAccount20240422": { "additionalProperties": false, "properties": { - "app_count": { - "type": "integer" - }, - "service_account_count": { - "type": "integer" + "default_org_context": { + "description": "ID of the default org for the service account.", + "format": "uuid", + "type": "string" }, - "user_count": { - "type": "integer" + "name": { + "description": "The name of the service account.", + "example": "user", + "type": "string" } }, + "required": [ + "name" + ], "type": "object" }, - "TenantRoleName": { - "description": "The display name of the role.", - "example": "Role name", - "type": "string" - }, - "TenantRoleResponseAttributes": { - "additionalProperties": false, + "SessionAttributes": { "properties": { - "custom": { - "default": false, - "type": "boolean" - }, - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "normalized_name": { + "created_at": { + "format": "date-time", "type": "string" - }, - "permissions": { - "items": { - "type": "string" - }, - "type": "array" } }, "required": [ - "name", - "description", - "permissions", - "custom" + "created_at" ], "type": "object" }, - "TenantRoleResponseData": { + "SessionData": { + "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/TenantRoleResponseAttributes" + "$ref": "#/components/schemas/SessionAttributes" }, "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "meta": { - "$ref": "#/components/schemas/TenantRoleMeta" - }, - "relationships": { - "properties": { - "tenant": { - "$ref": "#/components/schemas/Tenant" - } - }, - "type": "object" + "$ref": "#/components/schemas/Id" }, "type": { - "$ref": "#/components/schemas/TenantRoleType20241015" + "$ref": "#/components/schemas/Type" } }, "required": [ - "id", "type", + "id", "attributes" ], "type": "object" }, - "TenantRoleType": { - "description": "Resource type for tenant roles.", - "enum": [ - "tenant_role" - ], - "type": "string" - }, - "TenantRoleType20241015": { - "description": "The type of the resource for tenant role operations", - "enum": [ - "tenant_role" + "SettingsAttributes": { + "additionalProperties": false, + "properties": { + "severity_threshold": { + "$ref": "#/components/schemas/SeverityThreshold" + }, + "target_channel_id": { + "$ref": "#/components/schemas/TargetChannelId" + } + }, + "required": [ + "target_channel_id", + "severity_threshold" ], - "type": "string" + "type": "object" }, - "TenantRolesExternalMeta": { + "SettingsRequest": { + "additionalProperties": false, "properties": { - "permissions": { - "items": { - "properties": { - "description": { - "example": "Edit details of the Group", - "type": "string" - }, - "name": { - "example": "Edit Group Details", - "type": "string" - }, - "parent": { - "example": "group.read", - "type": "string" - }, - "value": { - "type": "string" - } + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/SettingsAttributes" }, - "required": [ - "value", - "description", - "name" - ], - "type": "object" + "type": { + "enum": [ + "slack" + ], + "type": "string" + } }, - "type": "array" + "required": [ + "type", + "attributes" + ], + "type": "object" } }, + "required": [ + "data" + ], "type": "object" }, - "TenantType": { - "description": "Resource type for tenants.", + "Severity": { + "description": "Indicate the severity of a finding discovered by a Test.", "enum": [ - "tenant" + "critical", + "high", + "medium", + "low", + "none", + "other" ], "type": "string" }, - "TenantUpdateAttributes": { - "additionalProperties": false, + "Severity3": { "properties": { - "name": { - "description": "The display name of the tenant.", - "example": "My Tenant", - "maxLength": 60, - "minLength": 1, + "level": { + "description": "Level of severity calculated via vector", + "example": "medium", + "type": "string" + }, + "score": { + "description": "The CVSS score calculated from the vector, representing the severity of the vulnerability on a scale from 0 to 10.", + "example": 5.3, + "nullable": true, + "type": "number" + }, + "source": { + "description": "The source of this severity. The value must be the id of a referenced problem or class, in which case that problem or class is the source of this issue. If source is omitted, this severity is sourced internally in the Snyk application.", + "example": "Snyk", + "type": "string" + }, + "type": { + "description": "Indicates if the CVSS item is primary or secondary. Clients should prefer the primary CVSS vector.", + "example": "primary", + "type": "string" + }, + "vector": { + "description": "CVSS vector string detailing the metrics of a vulnerability.", + "example": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L", + "nullable": true, + "type": "string" + }, + "version": { + "description": "CVSS version being described.", + "example": "4.0", "type": "string" } }, - "required": [ - "name" - ], "type": "object" }, - "TestAttributes": { - "description": "TestAttributes represents the attributes of a Test resource.", + "SeverityLevel": { + "enum": [ + "low", + "medium", + "high", + "critical" + ], + "type": "string", + "x-enum-varnames": [ + "Low", + "Medium", + "High", + "Critical" + ] + }, + "SeverityThreshold": { + "description": "Minimum Snyk issue severity to send a notification for, messages will not be sent for any issue below this value", + "enum": [ + "low", + "medium", + "high", + "critical" + ], + "example": "high", + "type": "string" + }, + "SlackChannel": { "properties": { - "config": { - "allOf": [ - { - "$ref": "#/components/schemas/TestConfiguration" + "attributes": { + "properties": { + "name": { + "description": "Name of the Slack Channel", + "example": "general", + "type": "string" + }, + "type": { + "description": "Channel type", + "enum": [ + "public", + "private", + "direct_message", + "multiparty_direct_message" + ], + "type": "string" } - ], - "description": "The test configuration. If not specified, caller accepts test configuration\ndefaults within the calling scope (org, group or tenant settings, etc)." + }, + "type": "object" }, - "created_at": { - "description": "Creation time of the test resource.", - "format": "date-time", - "readOnly": true, + "id": { + "example": "slack://channel?team=T123456\u0026id=C123456", + "format": "uri", "type": "string" }, - "effective_summary": { - "allOf": [ - { - "$ref": "#/components/schemas/FindingSummary" + "type": { + "example": "slack_channel", + "type": "string" + } + }, + "type": "object" + }, + "SlackDefaultSettingsData": { + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "severity_threshold": { + "$ref": "#/components/schemas/SeverityThreshold" + }, + "target_channel_id": { + "$ref": "#/components/schemas/TargetChannelId" + }, + "target_channel_name": { + "$ref": "#/components/schemas/TargetChannelName" } + }, + "required": [ + "target_channel_id", + "target_channel_name", + "severity_threshold" ], - "description": "Summary of findings discovered by the test, effective to the outcome\ndecision. This summary excludes findings suppressed by policy.\n\nThis attribute is set when the test execution\ncompletes (state.execution == 'finished') successfully (without fatal errors\nblocking an outcome).", - "readOnly": true + "type": "object" }, - "outcome": { - "allOf": [ - { - "$ref": "#/components/schemas/TestOutcome" - } - ], - "description": "The outcome of the test.\n\nThis attribute is set when the test execution\ncompletes (state.execution == 'completed') successfully (without fatal errors\nblocking an outcome).", - "readOnly": true + "id": { + "$ref": "#/components/schemas/Uuid" }, - "raw_summary": { - "allOf": [ - { - "$ref": "#/components/schemas/FindingSummary" - } - ], - "description": "Summary of findings regardless of whether they are effective or not. This\nsummary includes all findings, even those suppressed by policy.\n\nThis attribute is set when the test execution\ncompletes (state.execution == 'finished') successfully (without fatal errors\nblocking an outcome).", - "readOnly": true + "type": { + "example": "slack", + "type": "string" + } + }, + "type": "object" + }, + "Slots": { + "properties": { + "disclosure_time": { + "description": "The time at which this vulnerability was disclosed.", + "example": "2022-06-16T13:51:13Z", + "format": "date-time", + "type": "string" }, - "resources": { - "example": [ - { - "resource": { - "content_type": "source", - "file_patterns": [ - "*.go" - ], - "repository_url": "https://example.com/source/repo", - "revision_id": "abcde12345", - "type": "upload" + "exploit_details": { + "$ref": "#/components/schemas/ExploitDetails" + }, + "publication_time": { + "description": "The time at which this vulnerability was published.", + "example": "2022-06-16T14:00:24.315507Z", + "type": "string" + }, + "references": { + "items": { + "properties": { + "title": { + "description": "Descriptor for an external reference to the issue", + "type": "string" }, - "type": "base" + "url": { + "description": "URL for an external reference to the issue", + "type": "string" + } }, - { - "resource": { - "ref_id": "6BD4F5E2-D4E8-4C6B-BB0E-ECF0A70423F5", - "reference_type": "target", - "type": "snyk_ref" - }, - "type": "base" - } - ], - "items": { - "$ref": "#/components/schemas/TestResource" + "type": "object" }, "type": "array" + } + }, + "type": "object" + }, + "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\nSupported scans:\n- SCA scan on one (1) SnykReferenceResource which contains a\nTarget ID in addition to at least one of CommitRef or Branch\nprovided on the SCM Context object.", + "example": { + "ref_id": "00000000-0000-0000-0000-000000000000", + "reference_type": "project", + "type": "snyk_ref" + }, + "properties": { + "ref_id": { + "description": "ID referring the contents already known by Snyk.", + "format": "uuid", + "type": "string" }, - "state": { - "allOf": [ - { - "$ref": "#/components/schemas/TestState" - } + "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" ], - "description": "The state of the test's execution.", - "readOnly": true + "type": "string" }, - "subject": { - "allOf": [ - { - "$ref": "#/components/schemas/TestSubject" - } - ], - "description": "The subject of a test." + "scm_context": { + "$ref": "#/components/schemas/ScmContext" }, - "subject_locators": { - "description": "Additional 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.", - "example": [ - { - "paths": [ - "package.json" - ], - "type": "local_path" - } + "type": { + "enum": [ + "snyk_ref" ], - "items": { - "$ref": "#/components/schemas/TestSubjectLocator" - }, - "type": "array" + "type": "string" + } + }, + "required": [ + "type", + "reference_type", + "ref_id" + ], + "type": "object" + }, + "SonarqubeAttributes": { + "properties": { + "sonarqube_api_token": { + "format": "uuid", + "type": "string" }, - "test_facts": { - "description": "Facts about the test that were computed during test execution.", - "items": { - "$ref": "#/components/schemas/TestFact" - }, - "readOnly": true, - "type": "array" + "sonarqube_host_url": { + "example": "sonarqube.customer.com", + "type": "string" } }, "required": [ - "created_at", - "state" + "sonarqube_host_url", + "sonarqube_api_token" ], "type": "object" }, - "TestAttributesCreate": { - "description": "TestAttributes represents the attributes of a Test resource.", + "String256": { + "maxLength": 256, + "type": "string" + }, + "Suppression": { + "description": "Details about a finding's suppression in test results.\n\nSuppressed findings do not contribute to the test outcome, but they are still\nprovided in the results.", "properties": { - "config": { - "allOf": [ - { - "$ref": "#/components/schemas/TestConfiguration" - } - ], - "description": "The test configuration. If not specified, caller accepts test configuration\ndefaults within the calling scope (org, group or tenant settings, etc)." + "created_at": { + "description": "When the suppression was first created.", + "format": "date-time", + "type": "string" }, - "resources": { - "example": [ - { - "resource": { - "content_type": "source", - "file_patterns": [ - "*.go" - ], - "repository_url": "https://example.com/source/repo", - "revision_id": "abcde12345", - "type": "upload" - }, - "type": "base" - }, - { - "resource": { - "ref_id": "6BD4F5E2-D4E8-4C6B-BB0E-ECF0A70423F5", - "reference_type": "target", - "type": "snyk_ref" - }, - "type": "base" - } - ], + "expires_at": { + "description": "When the suppression will expire.", + "format": "date-time", + "type": "string" + }, + "justification": { + "description": "Reason given for an ignore pending approval.", + "type": "string" + }, + "path": { + "description": "Dependency path to the vulnerable package to be suppressed.\n\nIf not provided, the suppression will apply to all packages with the given\nvulnerability ID.", "items": { - "$ref": "#/components/schemas/TestResourceCreateItem" + "type": "string" }, "type": "array" }, - "subject": { + "policy": { "allOf": [ { - "$ref": "#/components/schemas/TestSubjectCreate" + "$ref": "#/components/schemas/PolicyRef" } ], - "description": "The subject of a test." + "description": "Policy responsible for the state of suppression represented here, if available." }, - "subject_locators": { - "description": "Additional 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.", - "example": [ + "skipIfFixable": { + "description": "Skip the suppression if an actual fix is available.", + "type": "boolean" + }, + "status": { + "allOf": [ { - "paths": [ - "package.json" - ], - "type": "local_path" + "$ref": "#/components/schemas/SuppressionStatus" } ], - "items": { - "$ref": "#/components/schemas/TestSubjectLocator" - }, - "type": "array" + "description": "Status of the suppression." } }, + "required": [ + "status" + ], "type": "object" }, - "TestConfiguration": { - "description": "Test configuration.", + "SuppressionStatus": { + "description": "Status of a suppression on a finding.", + "enum": [ + "ignored", + "pending_ignore_approval", + "other" + ], + "type": "string" + }, + "Tag": { "properties": { - "local_policy": { - "allOf": [ - { - "$ref": "#/components/schemas/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, + "tag_type": { + "description": "The classification type for this tag. Possible values: ecosystem - programming language or platform (e.g. java, python, javascript, golang, cpp, csharp, kubernetes, docker, aiml, rust, ruby, swift, general). topic - security or product training topic (freeform string). cwe - Common Weakness Enumeration identifier (format: CWE-{id}, e.g. CWE-79). cve - Common Vulnerabilities and Exposures identifier (format: CVE-{year}-{id}, e.g. CVE-2021-44228). snyk_vuln_id - Snyk vulnerability rule identifier (format: SNYK-{LANG}-{PKG}-{ID}, e.g. SNYK-JAVA-ORGAPACHELOGGINGLOG4J-2314720).", + "example": "cwe", "type": "string" }, - "project_environment": { + "tag_values": { + "description": "Array of values associated with this tag type. Values follow the format described by the corresponding tag_type.", + "example": [ + "CWE-79", + "CWE-89" + ], "items": { "type": "string" }, - "maxItems": 10, "type": "array" - }, - "project_lifecycle": { - "items": { + } + }, + "required": [ + "tag_type", + "tag_values" + ], + "type": "object" + }, + "TagsReplace": { + "additionalProperties": { + "maxLength": 40, + "pattern": "^[a-zA-Z0-9_/:?#@\u0026=+%~-]+$", + "type": "string" + }, + "description": "Full replacement of all tags on the asset.\nAll existing tags will be removed and replaced with the provided tags.\n", + "maxProperties": 100, + "type": "object" + }, + "TagsUpdate": { + "additionalProperties": false, + "description": "Updates the asset's tags by adding or removing key-value pairs.\nBoth add and remove can be specified in the same request.\nIf a tag key appears in both add and remove, the request will fail.\n", + "minProperties": 1, + "properties": { + "add": { + "additionalProperties": { + "maxLength": 40, + "pattern": "^[a-zA-Z0-9_/:?#@\u0026=+%~-]+$", "type": "string" }, - "maxItems": 10, - "type": "array" + "description": "Tags to add to the asset (key-value pairs).\nTag keys must be 1-30 characters and contain only alphanumeric characters, underscores, and hyphens.\nTag values must be up to 40 characters and contain only alphanumeric characters and _/:?#@\u0026=+%~- symbols.\n", + "maxProperties": 100, + "type": "object" }, - "project_tags": { + "remove": { + "description": "Tag keys to remove from the asset.\nTag keys must be 1-30 characters and contain only alphanumeric characters, underscores, and hyphens.\n", "items": { + "maxLength": 30, + "pattern": "^[a-zA-Z0-9_-]+$", "type": "string" }, - "maxItems": 10, + "maxItems": 100, "type": "array" + } + }, + "type": "object" + }, + "TargetChannelId": { + "example": "slack://channel?team=team-id\u0026id=channel-id", + "format": "uri", + "type": "string" + }, + "TargetChannelName": { + "example": "channel-name", + "minLength": 1, + "type": "string" + }, + "TargetRelationshipAttributes": { + "additionalProperties": false, + "description": "Attributes of the target resource", + "properties": { + "imported_at": { + "description": "Timestamp when the target was imported", + "format": "date-time", + "type": "string" }, - "publish_report": { - "description": "Publish findings into a report, viewable in the Snyk web UI.", - "type": "boolean" - }, - "scan_config": { - "$ref": "#/components/schemas/ScanConfiguration" + "integration_id": { + "description": "The ID of the integration associated with this target", + "format": "uuid", + "type": "string" }, - "target_name": { - "maxLength": 256, + "target_file": { + "description": "Path to the manifest file", "type": "string" }, - "target_reference": { - "description": "Fields from CLI.", - "maxLength": 1024, + "target_origin": { + "description": "Origin of the target (e.g., github, gitlab)", "type": "string" }, - "timeout": { - "allOf": [ - { - "$ref": "#/components/schemas/TimeoutSpec" - } - ], - "description": "Maximum test time in seconds, after which execution will be cancelled and\nthe test will fail with reason \"timeout\"." + "target_ref": { + "description": "The target reference (e.g., branch name)", + "type": "string" } }, "type": "object" }, - "TestData": { - "description": "TestData represents a Test resource object.", + "TargetRelationshipData": { + "additionalProperties": false, + "description": "Full target resource with attributes", "properties": { "attributes": { - "$ref": "#/components/schemas/TestAttributes" + "$ref": "#/components/schemas/TargetRelationshipAttributes" }, "id": { + "description": "The unique identifier of the target", + "example": "66666666-7777-8888-9999-000000000000", "format": "uuid", - "readOnly": true, "type": "string" }, - "links": { - "properties": { - "findings": { - "allOf": [ - { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - } - ], - "description": "Link to the findings discovered by the test, when it completes." - } - }, - "readOnly": true, - "type": "object" - }, "type": { + "description": "The JSON:API resource type", "enum": [ - "tests" + "target" ], + "example": "target", "type": "string" } }, "required": [ "id", - "type", - "attributes" + "type" ], "type": "object" }, - "TestDataCreate": { - "description": "TestData represents a Test resource object.", + "TargetRelationshipListResponse": { + "additionalProperties": false, + "description": "Response containing linked targets with full attributes", "properties": { - "attributes": { - "$ref": "#/components/schemas/TestAttributesCreate" + "data": { + "items": { + "$ref": "#/components/schemas/TargetRelationshipData" + }, + "type": "array" }, - "type": { - "enum": [ - "tests" - ], - "type": "string" + "jsonapi": { + "$ref": "#/components/schemas/JsonApiVersion" + }, + "links": { + "$ref": "#/components/schemas/RelationshipLinks" } }, "required": [ - "type", - "attributes" - ], - "type": "object" - }, - "TestExecutionStates": { - "enum": [ - "pending", - "started", - "finished", - "errored" - ], - "type": "string" - }, - "TestExecutionType": { - "enum": [ - "test-workflow-execution", - "custom-execution" - ], - "type": "string" - }, - "TestFact": { - "allOf": [ - { - "$ref": "#/components/schemas/DependencyCountFact" - } + "data", + "jsonapi", + "links" ], - "description": "TestFact represents a test fact union.", "type": "object" }, - "TestOutcome": { - "description": "Outcome of a test; pass or fail.", + "Tenant": { "properties": { - "breached_policies": { - "allOf": [ - { - "$ref": "#/components/schemas/PolicyRefSet" - } - ], - "description": "Test-level policies which were breached in a failing outcome.\n\nThis array may be truncated for a large number of policies." - }, - "reason": { - "allOf": [ - { - "$ref": "#/components/schemas/TestOutcomeReason" - } - ], - "description": "Reason for the outcome, if applicable." - }, - "result": { - "allOf": [ - { - "$ref": "#/components/schemas/PassFail" + "data": { + "properties": { + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "tenant" + ], + "type": "string" } + }, + "required": [ + "id", + "type" ], - "description": "Whether the test passed or failed." + "type": "object" } }, - "required": [ - "result" - ], "type": "object" }, - "TestOutcomeReason": { - "description": "Reasons for the outcome.", - "enum": [ - "policy_breach", - "timeout", - "other" - ], - "type": "string" - }, - "TestRequestBody": { - "description": "TestRequestBody represents the request body used when creating an Test.", + "TenantAttributes": { "properties": { - "data": { - "$ref": "#/components/schemas/TestDataCreate" - } - }, - "required": [ - "data" - ], - "type": "object" - }, - "TestResource": { - "anyOf": [ - { - "$ref": "#/components/schemas/BaseResource" - }, - { - "$ref": "#/components/schemas/DiffResource" - } - ], - "discriminator": { - "mapping": { - "base": "#/components/schemas/BaseResource", - "diff": "#/components/schemas/DiffResource" - }, - "propertyName": "type" - } - }, - "TestResourceCreateItem": { - "anyOf": [ - { - "$ref": "#/components/schemas/BaseResourceCreateItem" - }, - { - "$ref": "#/components/schemas/DiffResourceCreateItem" - } - ], - "discriminator": { - "mapping": { - "base": "#/components/schemas/BaseResourceCreateItem", - "diff": "#/components/schemas/DiffResourceCreateItem" + "created_at": { + "description": "The time the tenant was created.", + "example": "2022-03-16T00:00:00Z", + "format": "date-time", + "type": "string" }, - "propertyName": "type" - } - }, - "TestState": { - "description": "Test execution state information.", - "properties": { - "errors": { - "description": "Errors which occurred during the execution of a test.\n\nIf execution state is errored, at least one error will be\nindicated here.", - "items": { - "$ref": "#/components/schemas/io.snyk.api.common.Error" - }, - "type": "array" + "name": { + "description": "The display name of the tenant.", + "example": "My Tenant", + "type": "string" }, - "execution": { - "allOf": [ - { - "$ref": "#/components/schemas/TestExecutionStates" - } - ], - "description": "Current execution state of the test. This should be polled to completion\n(\"completed\" or \"errored\") when waiting for a test result.\n\nCompletion is no guarantee of an outcome in the event of fatal errors." + "slug": { + "description": "The canonical (unique and URL-friendly) name of the tenant.", + "example": "my-tenant", + "type": "string" }, - "warnings": { - "description": "Non-fatal errors which occurred during the execution of a test.\n\nExecution state and warnings are not linked; any of passed/failed/\nerrored tests can have warnings.", - "items": { - "$ref": "#/components/schemas/io.snyk.api.common.Error" - }, - "type": "array" + "updated_at": { + "description": "The time the tenant was last modified.", + "example": "2022-03-16T00:00:00Z", + "format": "date-time", + "type": "string" } }, "required": [ - "execution" + "name", + "slug", + "created_at", + "updated_at" ], "type": "object" }, - "TestSubject": { - "description": "The subject of a test, which identifies the asset/project and content references\nnecessary to conduct a security test.", - "discriminator": { - "mapping": { - "deepcode_bundle": "#/components/schemas/DeepcodeBundleSubject", - "dep_graph": "#/components/schemas/DepGraphSubject", - "git_url_coordinates": "#/components/schemas/GitUrlCoordinatesSubject", - "other": "#/components/schemas/OtherSubject", - "sbom": "#/components/schemas/SbomSubject", - "sbom_reachability": "#/components/schemas/SbomReachabilitySubject" - }, - "propertyName": "type" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/DeepcodeBundleSubject" - }, - { - "$ref": "#/components/schemas/DepGraphSubject" - }, - { - "$ref": "#/components/schemas/GitUrlCoordinatesSubject" - }, - { - "$ref": "#/components/schemas/SbomReachabilitySubject" - }, - { - "$ref": "#/components/schemas/OtherSubject" - }, - { - "$ref": "#/components/schemas/SbomSubject" - } - ] - }, - "TestSubjectCreate": { - "description": "The subject of a test, which identifies the asset/project and content references\nnecessary to conduct a security test.", - "discriminator": { - "mapping": { - "deepcode_bundle": "#/components/schemas/DeepcodeBundleSubject", - "dep_graph": "#/components/schemas/DepGraphSubjectCreate", - "git_url_coordinates": "#/components/schemas/GitUrlCoordinatesSubject", - "other": "#/components/schemas/OtherSubject", - "sbom": "#/components/schemas/SbomSubject", - "sbom_reachability": "#/components/schemas/SbomReachabilitySubject" - }, - "propertyName": "type" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/DeepcodeBundleSubject" - }, - { - "$ref": "#/components/schemas/DepGraphSubjectCreate" - }, - { - "$ref": "#/components/schemas/GitUrlCoordinatesSubject" - }, - { - "$ref": "#/components/schemas/SbomReachabilitySubject" - }, - { - "$ref": "#/components/schemas/OtherSubject" - }, - { - "$ref": "#/components/schemas/SbomSubject" - } - ] + "TenantId__0": { + "description": "Unique identifier for a tenant.", + "example": "00000000-0000-0000-0000-000000000000", + "format": "uuid", + "type": "string" }, - "TestSubjectLocator": { - "discriminator": { - "mapping": { - "local_path": "#/components/schemas/LocalPathLocator", - "other": "#/components/schemas/OtherLocator", - "project_entity": "#/components/schemas/ProjectEntityLocator", - "project_name": "#/components/schemas/ProjectNameLocator", - "scm_repo": "#/components/schemas/ScmRepoLocator" - }, - "propertyName": "type" - }, - "oneOf": [ - { - "$ref": "#/components/schemas/ProjectEntityLocator" - }, - { - "$ref": "#/components/schemas/ProjectNameLocator" - }, - { - "$ref": "#/components/schemas/ScmRepoLocator" - }, - { - "$ref": "#/components/schemas/LocalPathLocator" - }, - { - "$ref": "#/components/schemas/OtherLocator" - } - ] + "TenantMembershipId": { + "description": "Unique identifier for a tenant membership.", + "example": "00000000-0000-0000-0000-000000000000", + "format": "uuid", + "type": "string" }, - "TimeoutSpec": { - "description": "Specification for a test timeout policy. If the test does not complete within\nthe seconds specified, the test will instantly complete with the given outcome.", + "TenantMembershipResponseAttributes": { + "additionalProperties": false, "properties": { - "outcome": { - "$ref": "#/components/schemas/PassFail" - }, - "seconds": { - "format": "uint32", - "type": "integer" + "created_at": { + "$ref": "#/components/schemas/CreatedAt" } }, "required": [ - "seconds", - "outcome" + "created_at" ], "type": "object" }, - "Titles": { - "items": { - "type": "string" - }, - "maxItems": 50, - "minItems": 1, - "type": "array" - }, - "Type": { - "type": "string" - }, - "TypeDef": { - "description": "The type of an issue.", - "enum": [ - "package_vulnerability", - "license", - "cloud", - "code", - "custom", - "config" - ], - "example": "cloud", - "type": "string" - }, - "Types": { - "example": "resource", - "pattern": "^[a-z][a-z0-9]*(_[a-z][a-z0-9]*)*$", - "type": "string" - }, - "UpdateAssetAttributes": { - "additionalProperties": false, + "TenantMembershipResponseDataObject": { "properties": { - "class": { - "$ref": "#/components/schemas/AssetClass" + "attributes": { + "$ref": "#/components/schemas/TenantMembershipResponseAttributes" }, - "labels": { - "$ref": "#/components/schemas/AssetLabelsUpdate" + "id": { + "$ref": "#/components/schemas/TenantMembershipId" }, - "tags": { - "$ref": "#/components/schemas/AssetTagsUpdate" + "relationships": { + "$ref": "#/components/schemas/ReadTenantMembershipResponseRelationships" + }, + "type": { + "$ref": "#/components/schemas/TenantMembershipType" } }, + "required": [ + "id", + "type", + "attributes", + "relationships" + ], "type": "object" }, - "UpdateAssetRequestData": { - "description": "Asset update request data", + "TenantMembershipTenantRelationshipDataFull": { + "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/UpdateAssetAttributes" + "additionalProperties": false, + "properties": { + "name": { + "$ref": "#/components/schemas/TenantName" + } + }, + "required": [ + "name" + ], + "type": "object" }, "id": { - "format": "uuid", - "type": "string" + "$ref": "#/components/schemas/TenantId__0" }, "type": { - "enum": [ - "repository", - "image", - "package" - ], - "type": "string" + "$ref": "#/components/schemas/TenantType" } }, "required": [ - "type", "id", + "type", "attributes" ], "type": "object" }, - "UpdateAssignmentsPayload": { + "TenantMembershipTenantRelationshipFull": { + "additionalProperties": false, + "description": "The tenant to which the membership applies.", "properties": { - "assignments_ids": { - "items": { - "format": "uuid", - "type": "string" - }, - "type": "array" - }, - "due_date": { - "format": "date", - "type": "string" + "data": { + "$ref": "#/components/schemas/TenantMembershipTenantRelationshipDataFull" } }, "required": [ - "assignments_ids", - "due_date" + "data" ], "type": "object" }, - "UpdateBrokerConnectionRequest": { + "TenantMembershipTenantRoleRelationshipBasic": { "additionalProperties": false, + "description": "The role held by the user in the tenant.", "properties": { "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/CommonConnectionAttributes" - }, - "id": { - "format": "uuid", - "readOnly": true, - "type": "string" - }, - "type": { - "enum": [ - "broker_connection" - ], - "type": "string" - } - }, - "required": [ - "attributes", - "id", - "type" - ], - "type": "object" + "$ref": "#/components/schemas/TenantMembershipTenantRoleRelationshipDataBasic" } }, "required": [ @@ -20407,83 +27260,57 @@ ], "type": "object" }, - "UpdateBrokerDeploymentRequest": { + "TenantMembershipTenantRoleRelationshipDataBasic": { "additionalProperties": false, "properties": { - "data": { - "$ref": "#/components/schemas/BrokerDeploymentUpdateResource" + "id": { + "$ref": "#/components/schemas/TenantRoleId" + }, + "type": { + "$ref": "#/components/schemas/TenantRoleType" } }, "required": [ - "data" + "id", + "type" ], "type": "object" }, - "UpdateCollectionRequest": { + "TenantMembershipTenantRoleRelationshipDataFull": { + "additionalProperties": false, "properties": { - "data": { + "attributes": { "additionalProperties": false, "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "name": { - "$ref": "#/components/schemas/name" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "id": { - "format": "uuid", - "type": "string" - }, - "type": { - "$ref": "#/components/schemas/Types" + "name": { + "$ref": "#/components/schemas/TenantRoleName" } }, "required": [ - "type", - "attributes" + "name" ], "type": "object" + }, + "id": { + "$ref": "#/components/schemas/TenantRoleId" + }, + "type": { + "$ref": "#/components/schemas/TenantRoleType" } }, "required": [ - "data" + "id", + "type", + "attributes" ], "type": "object" }, - "UpdateCollectionWithProjectsRequest": { + "TenantMembershipTenantRoleRelationshipFull": { "additionalProperties": false, + "description": "The role held by the user in the tenant.", "properties": { "data": { - "description": "IDs of items to add to a collection", - "items": { - "additionalProperties": false, - "properties": { - "id": { - "format": "uuid", - "type": "string" - }, - "type": { - "description": "Type of the item id", - "enum": [ - "project" - ], - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" + "$ref": "#/components/schemas/TenantMembershipTenantRoleRelationshipDataFull" } }, "required": [ @@ -20491,2809 +27318,40435 @@ ], "type": "object" }, - "UpdateDeploymentCredentialRequest": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/DeploymentCredentialResource" - } - }, - "required": [ - "data" + "TenantMembershipType": { + "description": "Resource type for tenant memberships.", + "enum": [ + "tenant_membership" ], - "type": "object" + "type": "string" }, - "UpdateGroupPolicyAttributes": { + "TenantMembershipUserRelationshipDataAttributes": { "additionalProperties": false, - "description": "Attributes of a policy that can be updated.\nAt least one of 'name', 'conditions_group', 'action_type', or 'action' must be provided.\n", - "minProperties": 1, "properties": { - "action": { - "$ref": "#/components/schemas/GroupPolicyAction" + "account_type": { + "$ref": "#/components/schemas/UserAccountType" }, - "action_type": { - "$ref": "#/components/schemas/GroupPolicyActionType" + "active": { + "$ref": "#/components/schemas/UserIsActive" }, - "conditions_group": { - "$ref": "#/components/schemas/GroupPolicyConditionsGroup" + "email": { + "$ref": "#/components/schemas/UserEmail" + }, + "login_method": { + "$ref": "#/components/schemas/UserLoginMethod" }, "name": { - "type": "string" - } - }, - "type": "object" - }, - "UpdateGroupPolicyPayload": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/UpdateGroupPolicyAttributes" - }, - "id": { - "description": "the UUID of the policy to update.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "type": { - "enum": [ - "policy" - ], - "type": "string" - } - }, - "required": [ - "type", - "attributes", - "id" - ], - "type": "object" + "$ref": "#/components/schemas/UserName" + }, + "username": { + "$ref": "#/components/schemas/UserUsername" } }, "required": [ - "data" + "name", + "email", + "login_method" ], "type": "object" }, - "UpdateOrgMembershipRequestBody20240825": { + "TenantMembershipUserRelationshipDataFullWithMeta": { "additionalProperties": false, "properties": { "attributes": { - "type": "object" + "$ref": "#/components/schemas/TenantMembershipUserRelationshipDataAttributes" }, "id": { - "description": "The Snyk ID of the organization.", - "example": "f60ff965-6889-4db2-8c86-0285d62f35ab", - "format": "uuid", - "type": "string" + "$ref": "#/components/schemas/UserId" }, - "relationships": { + "meta": { "additionalProperties": false, "properties": { - "role": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "id": { - "description": "The Snyk ID of the Org Role.", - "example": "f60ff965-6889-4db2-8c86-0285d62f35ab", - "format": "uuid", - "type": "string" - }, - "type": { - "description": "The type of the resource. Always 'org_role'.", - "example": "org_role", - "type": "string" - } - }, - "required": [ - "type", - "id" - ], - "type": "object" - } - }, - "type": "object" + "tenant_owner": { + "description": "Whether the user is the owner of the tenant.", + "type": "boolean" } }, - "required": [ - "role" - ], "type": "object" }, "type": { - "description": "The type of the resource. Always 'org_membership'.", - "example": "org_membership", - "type": "string" + "$ref": "#/components/schemas/UserType" } }, "required": [ - "type", "id", - "relationships" + "type", + "attributes" ], "type": "object" }, - "UpdatePolicyAttributes": { + "TenantMembershipUserRelationshipFullWithMeta": { "additionalProperties": false, - "description": "Attributes of a policy that can be updated.\nAt least one of 'name', 'conditions_group', 'action', or 'review' must be provided.\n\nIn order to update the review field, the caller will need to have the\n\"Review Ignore Request\" permission.\n", + "description": "The user to which the membership belongs.", "properties": { - "action": { - "$ref": "#/components/schemas/PolicyActionIgnore" - }, - "conditions_group": { - "$ref": "#/components/schemas/PolicyConditionsGroup" - }, - "name": { - "maxLength": 255, - "type": "string" - }, - "review": { - "$ref": "#/components/schemas/UpdatePolicyReview" + "data": { + "$ref": "#/components/schemas/TenantMembershipUserRelationshipDataFullWithMeta" } }, + "required": [ + "data" + ], "type": "object" }, - "UpdatePolicyPayload": { - "additionalProperties": false, + "TenantName": { + "description": "The display name of the tenant.", + "example": "My Tenant", + "type": "string" + }, + "TenantRelationships": { "properties": { - "data": { - "additionalProperties": false, + "owner": { "properties": { - "attributes": { - "$ref": "#/components/schemas/UpdatePolicyAttributes" - }, - "id": { - "description": "the UUID of the policy to update.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "$ref": "#/components/schemas/Meta" - }, - "type": { - "enum": [ - "policy" + "data": { + "properties": { + "id": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The type of the resource. Always 'user'.", + "example": "user", + "type": "string" + } + }, + "required": [ + "id", + "type" ], - "type": "string" + "type": "object" } }, "required": [ - "type", - "attributes" + "data" ], "type": "object" } }, - "required": [ - "data" - ], "type": "object" }, - "UpdatePolicyReview": { - "description": "Review update.\n\nTo provide an optional message relating to the review state change, add a string 'message' property to the 'meta' object.\n", - "enum": [ - "pending", - "approved", - "rejected" - ], - "type": "string" - }, - "UpdateTenantMembershipRequestData": { + "TenantResponseData": { "additionalProperties": false, "properties": { "attributes": { - "additionalProperties": false, - "type": "object" + "$ref": "#/components/schemas/TenantAttributes" }, "id": { - "$ref": "#/components/schemas/TenantMembershipId" + "description": "The Snyk ID of the tenant.", + "example": "59d6d97e-3106-4ebb-b608-352fad9c5b34", + "format": "uuid", + "type": "string" }, "relationships": { - "$ref": "#/components/schemas/UpdateTenantMembershipRequestRelationships" + "$ref": "#/components/schemas/TenantRelationships" }, "type": { - "$ref": "#/components/schemas/TenantMembershipType" + "$ref": "#/components/schemas/Types" } }, "required": [ - "id", "type", - "relationships" + "id", + "attributes" ], "type": "object" }, - "UpdateTenantMembershipRequestRelationships": { + "TenantRoleId": { + "description": "Unique identifier for a tenant role.", + "example": "00000000-0000-0000-0000-000000000000", + "format": "uuid", + "type": "string" + }, + "TenantRoleMeta": { "additionalProperties": false, "properties": { - "role": { - "$ref": "#/components/schemas/TenantMembershipTenantRoleRelationshipBasic" + "app_count": { + "type": "integer" + }, + "service_account_count": { + "type": "integer" + }, + "user_count": { + "type": "integer" } }, - "required": [ - "role" - ], "type": "object" }, - "UpdateTenantRoleRequestAttributes": { + "TenantRoleName": { + "description": "The display name of the role.", + "example": "Role name", + "type": "string" + }, + "TenantRoleResponseAttributes": { "additionalProperties": false, - "minProperties": 1, "properties": { + "custom": { + "default": false, + "type": "boolean" + }, "description": { - "description": "The description of the tenant role.", - "maxLength": 160, - "minLength": 1, "type": "string" }, "name": { - "description": "The name of the tenant role.", - "maxLength": 60, - "minLength": 1, + "type": "string" + }, + "normalized_name": { "type": "string" }, "permissions": { - "description": "Requested permissions of the tenant role. Must be the entire set of permissions.", "items": { "type": "string" }, "type": "array" } }, + "required": [ + "name", + "description", + "permissions", + "custom" + ], "type": "object" }, - "Updated": { - "description": "The last time the settings were updated.", - "example": "2021-11-12T10:31:06.026Z", - "format": "date-time", - "type": "string" - }, - "UpgradePackageAdvice": { - "description": "Upgrade a package from one version to another.", - "example": { - "format": "upgrade_package_advice", - "package_name": "lodash", - "upgrade_paths": [ - { - "dependency_path": [ - { - "name": "lodash", - "version": "2.1.1" - }, - { - "name": "minimist", - "version": "4.7.6" - } - ], - "is_drop": false - } - ] - }, + "TenantRoleResponseData": { "properties": { - "format": { - "enum": [ - "upgrade_package_advice" - ], - "type": "string" + "attributes": { + "$ref": "#/components/schemas/TenantRoleResponseAttributes" }, - "package_name": { - "description": "The package that's receiving an upgrade to fix this vulnerability", + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", "type": "string" }, - "upgrade_paths": { - "description": "Upgrading a package may lead to one or more paths to change. These paths are modelled as evidence\nin DependencyPathEvidence.\n\nUltimately upgradePaths illustrates the minimum version upgrades that need to happen to apply this action.", - "items": { - "$ref": "#/components/schemas/UpgradePath" + "meta": { + "$ref": "#/components/schemas/TenantRoleMeta" + }, + "relationships": { + "properties": { + "tenant": { + "$ref": "#/components/schemas/Tenant" + } }, - "type": "array" + "type": "object" + }, + "type": { + "$ref": "#/components/schemas/TenantRoleType20241015" } }, "required": [ - "format", - "package_name", - "upgrade_paths" + "id", + "type", + "attributes" ], "type": "object" }, - "UpgradePath": { - "description": "Upgrade path model all known dependency paths that will change when applying an upgrade action.", + "TenantRoleType": { + "description": "Resource type for tenant roles.", + "enum": [ + "tenant_role" + ], + "type": "string" + }, + "TenantRoleType20241015": { + "description": "The type of the resource for tenant role operations", + "enum": [ + "tenant_role" + ], + "type": "string" + }, + "TenantRolesExternalMeta": { "properties": { - "dependency_path": { + "permissions": { "items": { - "$ref": "#/components/schemas/Package" + "properties": { + "description": { + "example": "Edit details of the Group", + "type": "string" + }, + "name": { + "example": "Edit Group Details", + "type": "string" + }, + "parent": { + "example": "group.read", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description", + "name" + ], + "type": "object" }, - "maxItems": 100, "type": "array" - }, - "is_drop": { - "description": "A drop describes an upgrade path, where the vulnerability gets addressed by removing the vulnerable dependency.\nThis typically happens when a package somewhere mid-way drops this library in newer versions.\n\nNote: For drops, the length of the upgradePath will be smaller than the length of the original dependencyPath.", - "type": "boolean" + } + }, + "type": "object" + }, + "TenantType": { + "description": "Resource type for tenants.", + "enum": [ + "tenant" + ], + "type": "string" + }, + "TenantUpdateAttributes": { + "additionalProperties": false, + "properties": { + "name": { + "description": "The display name of the tenant.", + "example": "My Tenant", + "maxLength": 60, + "minLength": 1, + "type": "string" } }, "required": [ - "dependency_path", - "is_drop" + "name" ], "type": "object" }, - "UploadResource": { + "TestAttributes": { + "description": "TestAttributes represents the attributes of a Test resource.", "properties": { - "content_type": { - "enum": [ - "sbom", - "source" - ], - "type": "string" - }, - "file_patterns": { + "components": { + "description": "Scanned Components of the tested content.\n\nUnique on a per-test basis, originating from a single Scan type\nthough a single Scan may identify multiple Components.", "items": { - "type": "string" + "$ref": "#/components/schemas/TestComponent" }, - "maxItems": 20, + "readOnly": true, "type": "array" }, - "name": { - "maxLength": 256, - "type": "string" + "config": { + "allOf": [ + { + "$ref": "#/components/schemas/TestConfiguration" + } + ], + "description": "The test configuration. If not specified, caller accepts test configuration\ndefaults within the calling scope (org, group or tenant settings, etc)." }, - "repository_url": { - "format": "url", - "maxLength": 1024, + "created_at": { + "description": "Creation time of the test resource.", + "format": "date-time", + "readOnly": true, "type": "string" }, - "revision_id": { - "maxLength": 1024, - "type": "string" + "effective_summary": { + "allOf": [ + { + "$ref": "#/components/schemas/FindingSummary" + } + ], + "description": "Summary of findings discovered by the test, effective to the outcome\ndecision. This summary excludes findings suppressed by policy.\n\nThis attribute is set when the test execution\ncompletes (state.execution == 'finished') successfully (without fatal errors\nblocking an outcome).", + "readOnly": true }, - "root_folder_id": { - "maxLength": 1024, - "type": "string" + "outcome": { + "allOf": [ + { + "$ref": "#/components/schemas/TestOutcome" + } + ], + "description": "The outcome of the test.\n\nThis attribute is set when the test execution\ncompletes (state.execution == 'completed') successfully (without fatal errors\nblocking an outcome).", + "readOnly": true }, - "type": { - "enum": [ - "upload" + "raw_summary": { + "allOf": [ + { + "$ref": "#/components/schemas/FindingSummary" + } ], - "type": "string" - } - }, - "required": [ - "type", - "revision_id", - "content_type", - "file_patterns" - ], - "type": "object" - }, - "User": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "active": { - "description": "Whether the user status is enabled or not", - "example": true, - "type": "boolean" - }, - "email": { - "description": "The email of the user.", - "example": "user@someorg.com", - "type": "string" - }, - "membership": { - "properties": { - "created_at": { - "description": "The date the membership was established.", - "example": "2022-09-14T09:19:29.206Z", - "format": "date-time", - "type": "string" - }, - "strategy": { - "description": "Whether the membership is a direct, or indirect membership.", - "enum": [ - "direct", - "indirect" - ], - "example": "direct", - "type": "string" - } + "description": "Summary of findings regardless of whether they are effective or not. This\nsummary includes all findings, even those suppressed by policy.\n\nThis attribute is set when the test execution\ncompletes (state.execution == 'finished') successfully (without fatal errors\nblocking an outcome).", + "readOnly": true + }, + "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.", + "example": [ + { + "resource": { + "content_type": "source", + "file_patterns": [ + "*.go" + ], + "repository_url": "https://example.com/source/repo", + "revision_id": "abcde12345", + "type": "upload" }, - "type": "object" - }, - "name": { - "description": "The name of the user.", - "example": "user", - "type": "string" + "type": "base" }, - "username": { - "description": "The username of the user.", - "example": "username", - "type": "string" + { + "resource": { + "ref_id": "6BD4F5E2-D4E8-4C6B-BB0E-ECF0A70423F5", + "reference_type": "target", + "type": "snyk_ref" + }, + "type": "base" } + ], + "items": { + "$ref": "#/components/schemas/TestResource" }, - "type": "object" + "type": "array" }, - "id": { - "description": "The Snyk ID corresponding to this user", - "example": "55a348e2-c3ad-4bbc-b40e-9b232d1f4121", - "format": "uuid", - "type": "string" + "sdlc_stage": { + "allOf": [ + { + "$ref": "#/components/schemas/SdlcStage" + } + ], + "description": "SDLC stage where the test was initiated." }, - "type": { - "description": "Content type.", - "example": "user", - "type": "string" - } - }, - "required": [ - "type", - "id", - "attributes" - ], - "type": "object" - }, - "User20240422": { - "additionalProperties": false, - "properties": { - "avatar_url": { - "description": "The avatar url of the user.", - "example": "https://snyk.io/avatar.png", - "format": "uri", - "type": "string" + "state": { + "allOf": [ + { + "$ref": "#/components/schemas/TestState" + } + ], + "description": "The state of the test's execution.", + "readOnly": true }, - "default_org_context": { - "description": "ID of the default org for the user.", - "format": "uuid", - "type": "string" + "subject": { + "allOf": [ + { + "$ref": "#/components/schemas/TestSubject" + } + ], + "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." }, - "email": { - "description": "The email of the user.", - "example": "user@someorg.com", - "type": "string" + "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.", + "example": [ + { + "paths": [ + "package.json" + ], + "type": "local_path" + } + ], + "items": { + "$ref": "#/components/schemas/TestSubjectLocator" + }, + "type": "array" }, - "name": { - "description": "The name of the user.", - "example": "user", - "type": "string" + "test_facts": { + "description": "Facts about the test that were computed during test execution.", + "items": { + "$ref": "#/components/schemas/TestFact" + }, + "readOnly": true, + "type": "array" }, - "username": { - "description": "The username of the user.", - "example": "username", + "user_public_id": { + "description": "Public identifier of the user who initiated the test.", + "maxLength": 64, "type": "string" } }, "required": [ - "name", - "email", - "avatar_url" + "created_at", + "state" ], "type": "object" }, - "UserAccountType": { - "description": "The type of the user account.", - "example": "user", - "type": "string" - }, - "UserEmail": { - "description": "The e-mail address of the user.", - "example": "user@example.com", - "type": "string" - }, - "UserId": { - "description": "Unique identifier for a user.", - "example": "00000000-0000-0000-0000-000000000000", - "format": "uuid", - "type": "string" - }, - "UserIsActive": { - "description": "Whether the user is active.", - "example": true, - "type": "boolean" - }, - "UserLoginMethod": { - "description": "The authentication method used by the user.", - "example": "saml", - "type": "string" - }, - "UserName": { - "description": "The real name of the user.", - "example": "Firstname Lastname", - "type": "string" - }, - "UserPatchRequestBody": { - "additionalProperties": false, + "TestAttributesCreate": { + "description": "TestAttributes represents the attributes of a Test resource.", "properties": { - "attributes": { - "properties": { - "membership": { - "nullable": true, - "properties": { - "role": { - "description": "Role name", - "example": "MEMBER", - "type": "string" - } + "config": { + "allOf": [ + { + "$ref": "#/components/schemas/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.", + "example": [ + { + "resource": { + "content_type": "source", + "file_patterns": [ + "*.go" + ], + "repository_url": "https://example.com/source/repo", + "revision_id": "abcde12345", + "type": "upload" }, - "type": "object" + "type": "base" + }, + { + "resource": { + "ref_id": "6BD4F5E2-D4E8-4C6B-BB0E-ECF0A70423F5", + "reference_type": "target", + "type": "snyk_ref" + }, + "type": "base" } + ], + "items": { + "$ref": "#/components/schemas/TestResourceCreateItem" }, - "required": [ - "membership" + "type": "array" + }, + "sdlc_stage": { + "allOf": [ + { + "$ref": "#/components/schemas/SdlcStage" + } ], - "type": "object" + "description": "SDLC stage where the test was initiated." }, - "id": { - "description": "The Snyk ID corresponding to this user", - "example": "55a348e2-c3ad-4bbc-b40e-9b232d1f4121", - "format": "uuid", - "type": "string" + "subject": { + "allOf": [ + { + "$ref": "#/components/schemas/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." }, - "type": { - "description": "Content type", - "example": "user", - "type": "string" - } - }, - "required": [ - "type", - "id", - "attributes" - ], - "type": "object" - }, - "UserRelationship": { - "properties": { - "data": { - "properties": { - "attributes": { - "properties": { - "email": { - "type": "string" - }, - "username": { - "type": "string" - } - }, - "required": [ - "email", - "username" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "type": { - "enum": [ - "user" + "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.", + "example": [ + { + "paths": [ + "package.json" ], - "type": "string" + "type": "local_path" } - }, - "required": [ - "type", - "id", - "attributes" ], - "type": "object" + "items": { + "$ref": "#/components/schemas/TestSubjectLocator" + }, + "type": "array" }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "user_public_id": { + "description": "Public identifier of the user who initiated the test.", + "maxLength": 64, + "type": "string" } }, - "required": [ - "links", - "data" - ], "type": "object" }, - "UserType": { - "description": "Resource type for users.", - "enum": [ - "user" - ], - "type": "string" - }, - "UserUsername": { - "description": "The username of the user.", - "example": "username", - "type": "string" - }, - "UsersProgress": { + "TestComponent": { + "description": "TestComponent represents a Test Component.", "properties": { - "attributes": { - "$ref": "#/components/schemas/UsersProgressAttributes" + "asset_id": { + "allOf": [ + { + "$ref": "#/components/schemas/Uuid" + } + ], + "description": "ID of Asset associated with Component." }, - "id": { - "format": "uuid", - "type": "string" + "key": { + "allOf": [ + { + "$ref": "#/components/schemas/String256" + } + ], + "description": "Key identifying the component within the Test." }, - "relationships": { - "$ref": "#/components/schemas/ProgressRelationships" + "project_id": { + "allOf": [ + { + "$ref": "#/components/schemas/Uuid" + } + ], + "description": "ID of Project associated with Component." }, - "type": { - "enum": [ - "progress" + "scan_type": { + "allOf": [ + { + "$ref": "#/components/schemas/FindingType" + } ], - "type": "string" + "description": "Type of Scanner producing Findings associated with this\nComponent." } }, "required": [ - "id", - "type", - "attributes", - "relationships" + "key", + "scan_type" ], "type": "object" }, - "UsersProgressAttributes": { + "TestConfiguration": { + "description": "Test configuration.", "properties": { - "completion_date": { - "format": "date-time", + "asset_name": { + "maxLength": 256, "type": "string" }, - "completion_history": { + "local_policy": { + "allOf": [ + { + "$ref": "#/components/schemas/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." + }, + "monitor": { + "description": "Indicates whether the test result should be monitored with recurring tests.", + "type": "boolean" + }, + "project_business_criticality": { + "maxLength": 256, + "type": "string" + }, + "project_environment": { "items": { - "format": "date-time", "type": "string" }, + "maxItems": 10, "type": "array" }, - "is_expired": { + "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" }, - "resource": { - "enum": [ - "learning_path", - "lesson" - ], + "scan_config": { + "$ref": "#/components/schemas/ScanConfiguration" + }, + "target_name": { + "maxLength": 256, "type": "string" }, - "status": { - "enum": [ - "completed", - "inProgress", - "todo" - ], + "target_reference": { + "description": "Fields from CLI.", + "maxLength": 1024, "type": "string" + }, + "timeout": { + "allOf": [ + { + "$ref": "#/components/schemas/TimeoutSpec" + } + ], + "description": "Maximum test time in seconds, after which execution will be cancelled and\nthe test will fail with reason \"timeout\"." } }, - "required": [ - "status", - "resource", - "completion_history" - ], "type": "object" }, - "UsersProgressResponse": { + "TestData": { + "description": "TestData represents a Test resource object.", "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/UsersProgress" - }, - "type": "array" + "attributes": { + "$ref": "#/components/schemas/TestAttributes" }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "id": { + "format": "uuid", + "readOnly": true, + "type": "string" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "jsonapi", - "links", - "data" - ], - "type": "object" - }, - "Uuid": { - "format": "uuid", - "type": "string" - }, - "VersioningSchema": { - "allOf": [ - { - "oneOf": [ - { - "$ref": "#/components/schemas/VersioningSchemaSemverType" - }, - { - "$ref": "#/components/schemas/VersioningSchemaCustomType" - }, - { - "$ref": "#/components/schemas/VersioningSchemaSingleSelectionType" + "properties": { + "findings": { + "allOf": [ + { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + } + ], + "description": "Link to the findings discovered by the test, when it completes." } - ] - } - ], - "description": "The versioning scheme used by images in the repository.\n\nA versioning schema is a system for identifying and organizing different versions of a project. \nIt is used to track changes and updates to the project over time, and to help users identify which version they are using. \nA versioning schema typically consists of a series of numbers or labels that are incremented to reflect the progression of versions. \nFor example, a versioning schema might use a series of numbers, such as \"1.0\", \"1.1\", \"2.0\", and so on, to indicate major and minor releases of a product. \nA consistent and well-defined versioning schema helps users and tools understand and track the development of a project.\n" - }, - "VersioningSchemaCustomType": { - "additionalProperties": false, - "description": "The Custom Schema type is a way for Snyk to understand your company’s container image tag versioning scheme,\nenabling Snyk to give more accurate base image upgrade recommendations.\n\nThis schema type is essentially a regular expression that groups the different parts of an image’s tag into comparable sections.\n\nIf your container image's tags follow a versioning scheme other than Semantic Versioning (SemVer), \nit is highly recommended that you select the \"Custom Versioning\" schema for your image repositories.\n", - "properties": { - "expression": { - "description": "The regular expression used to describe the format of tags.\nKeep in mind that backslashes in the expression need to be escaped due to being encompassed in a JSON string.\n", - "example": "(?\u003cC0\u003e.)\\-(?\u003cM2\u003e.*)", - "type": "string" - }, - "label": { - "description": "A customizable string that can be set for a custom versioning schema to describe its meaning.\nThis label has no function.\n", - "example": "calendar with flavor schema", - "type": "string" + }, + "readOnly": true, + "type": "object" }, "type": { "enum": [ - "custom" + "tests" ], "type": "string" } }, "required": [ + "id", "type", - "expression" + "attributes" ], "type": "object" }, - "VersioningSchemaSemverType": { - "additionalProperties": false, + "TestDataCreate": { + "description": "TestData represents a Test resource object.", "properties": { + "attributes": { + "$ref": "#/components/schemas/TestAttributesCreate" + }, "type": { "enum": [ - "semver" + "tests" ], - "example": "semver", "type": "string" } }, "required": [ - "type" + "type", + "attributes" ], "type": "object" }, - "VersioningSchemaSingleSelectionType": { - "additionalProperties": false, - "description": "The Single Selection Versioning Schema allows manual setting of which image should be given as a recommendation.\n\nOnly one image can be set as the current recommendation. If no images are set as the current selection, \nno recommendation will be given.\n\nIt is recommended to use this versioning schema if your repository's tags aren't supported by the other schemas.\n", - "properties": { - "is_selected": { - "description": "Whether this image should be the recommendation. Only one image can be selected at a given time. Setting this\nas true will remove previous selection.\n", - "example": true, - "type": "boolean" - }, - "type": { - "enum": [ - "single-selection" - ], - "example": "single-selection", - "type": "string" + "TestExecutionStates": { + "enum": [ + "pending", + "started", + "finished", + "errored" + ], + "type": "string" + }, + "TestExecutionType": { + "enum": [ + "test-workflow-execution", + "custom-execution" + ], + "type": "string" + }, + "TestFact": { + "allOf": [ + { + "$ref": "#/components/schemas/DependencyCountFact" } - }, - "required": [ - "type", - "is_selected" ], + "description": "TestFact represents a test fact union.", "type": "object" }, - "WorkloadAttributes": { + "TestOutcome": { + "description": "Outcome of a test; pass or fail.", "properties": { - "required": { - "properties": { - "workload_internal_uri": { - "type": "string" - }, - "workload_type_id": { - "format": "uuid", - "type": "string" + "breached_policies": { + "allOf": [ + { + "$ref": "#/components/schemas/PolicyRefSet" } - }, - "required": [ - "workload_type_id", - "workload_internal_uri" ], - "type": "object" + "description": "Test-level policies which were breached in a failing outcome.\n\nThis array may be truncated for a large number of policies." }, - "type": { - "enum": [ - "workload" + "reason": { + "allOf": [ + { + "$ref": "#/components/schemas/TestOutcomeReason" + } ], - "type": "string" + "description": "Reason for the outcome, if applicable." }, - "validations": { - "items": { - "type": "object" - }, - "type": "array" + "result": { + "allOf": [ + { + "$ref": "#/components/schemas/PassFail" + } + ], + "description": "Whether the test passed or failed." } }, "required": [ - "type", - "required" + "result" ], "type": "object" }, - "YarnBuildArgs": { - "additionalProperties": false, + "TestOutcomeReason": { + "description": "Reasons for the outcome.", + "enum": [ + "policy_breach", + "timeout", + "other" + ], + "type": "string" + }, + "TestRequestBody": { + "description": "TestRequestBody represents the request body used when creating an Test.", "properties": { - "root_workspace": { - "type": "string" + "data": { + "$ref": "#/components/schemas/TestDataCreate" } }, "required": [ - "root_workspace" + "data" ], "type": "object" }, - "io.snyk.api.common.Error": { + "TestRequestBodyData": { + "additionalProperties": false, "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "format": "uuid", - "type": "string" - }, - "links": { - "$ref": "#/components/schemas/io.snyk.api.common.ErrorLink" - }, - "meta": { - "type": "object" - }, - "source": { - "properties": { - "parameter": { - "type": "string" - }, - "pointer": { - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "pattern": "^[45]\\d\\d$", - "type": "string" + "attributes": { + "$ref": "#/components/schemas/SastTestRequestDataAttributes" }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "type": "string" + "type": { + "$ref": "#/components/schemas/TestType" } }, "required": [ - "status", - "detail" + "type", + "attributes" ], "type": "object" }, - "io.snyk.api.common.ErrorDocument": { - "properties": { - "errors": { - "items": { - "$ref": "#/components/schemas/io.snyk.api.common.Error" - }, - "minItems": 1, - "type": "array" + "TestResource": { + "anyOf": [ + { + "$ref": "#/components/schemas/BaseResource" }, - "jsonapi": { - "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" + { + "$ref": "#/components/schemas/DiffResource" } - }, - "required": [ - "jsonapi", - "errors" ], - "type": "object" + "description": "TestResources contain single instances of testable content\nto be provided to Snyk scanners.", + "discriminator": { + "mapping": { + "base": "#/components/schemas/BaseResource", + "diff": "#/components/schemas/DiffResource" + }, + "propertyName": "type" + } }, - "io.snyk.api.common.ErrorLink": { - "additionalProperties": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - }, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "properties": { - "about": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "TestResourceCreateItem": { + "anyOf": [ + { + "$ref": "#/components/schemas/BaseResourceCreateItem" + }, + { + "$ref": "#/components/schemas/DiffResourceCreateItem" } + ], + "description": "TestResources contain single instances of testable content\nto be provided to Snyk scanners.", + "discriminator": { + "mapping": { + "base": "#/components/schemas/BaseResourceCreateItem", + "diff": "#/components/schemas/DiffResourceCreateItem" + }, + "propertyName": "type" + } + }, + "TestResultsType": { + "description": "The type identifier for the \"results\" resource.", + "enum": [ + "results" + ], + "type": "string" + }, + "TestRuleKeys": { + "description": "Array of rule keys for the impact test.", + "items": { + "maxLength": 200, + "type": "string" }, - "type": "object" + "maxItems": 2400, + "minItems": 1, + "type": "array", + "uniqueItems": true }, - "io.snyk.api.common.JsonApi": { + "TestState": { + "description": "Test execution state information.", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "enum": [ - "1.0" + "errors": { + "description": "Errors which occurred during the execution of a test.\n\nIf execution state is errored, at least one error will be\nindicated here.", + "items": { + "$ref": "#/components/schemas/io.snyk.api.common.Error" + }, + "type": "array" + }, + "execution": { + "allOf": [ + { + "$ref": "#/components/schemas/TestExecutionStates" + } ], - "type": "string" + "description": "Current execution state of the test. This should be polled to completion\n(\"completed\" or \"errored\") when waiting for a test result.\n\nCompletion is no guarantee of an outcome in the event of fatal errors." + }, + "warnings": { + "description": "Non-fatal errors which occurred during the execution of a test.\n\nExecution state and warnings are not linked; any of passed/failed/\nerrored tests can have warnings.", + "items": { + "$ref": "#/components/schemas/io.snyk.api.common.Error" + }, + "type": "array" } }, "required": [ - "version" + "execution" ], "type": "object" }, - "io.snyk.api.common.LinkObject": { - "properties": { - "href": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkString" + "TestSubject": { + "description": "The subject of a test, which identifies the asset/project and content references\nnecessary to conduct a security test.", + "discriminator": { + "mapping": { + "deepcode_bundle": "#/components/schemas/DeepcodeBundleSubject", + "dep_graph": "#/components/schemas/DepGraphSubject", + "git_url_coordinates": "#/components/schemas/GitUrlCoordinatesSubject", + "other": "#/components/schemas/OtherSubject", + "sbom": "#/components/schemas/SbomSubject", + "sbom_reachability": "#/components/schemas/SbomReachabilitySubject" }, - "meta": { - "$ref": "#/components/schemas/io.snyk.api.common.Meta" - } + "propertyName": "type" }, - "required": [ - "href" - ], - "type": "object" - }, - "io.snyk.api.common.LinkProperty": { "oneOf": [ { - "$ref": "#/components/schemas/io.snyk.api.common.LinkString" + "$ref": "#/components/schemas/DeepcodeBundleSubject" }, { - "$ref": "#/components/schemas/io.snyk.api.common.LinkObject" + "$ref": "#/components/schemas/DepGraphSubject" + }, + { + "$ref": "#/components/schemas/GitUrlCoordinatesSubject" + }, + { + "$ref": "#/components/schemas/SbomReachabilitySubject" + }, + { + "$ref": "#/components/schemas/OtherSubject" + }, + { + "$ref": "#/components/schemas/SbomSubject" } ] }, - "io.snyk.api.common.LinkString": { - "format": "uri", - "type": "string" - }, - "io.snyk.api.common.Meta": { - "additionalProperties": {}, - "description": "Free-form object that may contain non-standard information.", - "type": "object" - }, - "io.snyk.api.common.PaginatedLinks": { - "properties": { - "first": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "TestSubjectCreate": { + "description": "The subject of a test, which identifies the asset/project and content references\nnecessary to conduct a security test.", + "discriminator": { + "mapping": { + "deepcode_bundle": "#/components/schemas/DeepcodeBundleSubject", + "dep_graph": "#/components/schemas/DepGraphSubjectCreate", + "git_url_coordinates": "#/components/schemas/GitUrlCoordinatesSubject", + "other": "#/components/schemas/OtherSubject", + "sbom": "#/components/schemas/SbomSubject", + "sbom_reachability": "#/components/schemas/SbomReachabilitySubject" }, - "last": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/DeepcodeBundleSubject" }, - "next": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + { + "$ref": "#/components/schemas/DepGraphSubjectCreate" }, - "prev": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + { + "$ref": "#/components/schemas/GitUrlCoordinatesSubject" }, - "self": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + { + "$ref": "#/components/schemas/SbomReachabilitySubject" + }, + { + "$ref": "#/components/schemas/OtherSubject" + }, + { + "$ref": "#/components/schemas/SbomSubject" } - }, - "type": "object" + ] }, - "io.snyk.api.common.RelatedLink": { - "properties": { - "related": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - } + "TestSubjectLocator": { + "discriminator": { + "mapping": { + "local_path": "#/components/schemas/LocalPathLocator", + "other": "#/components/schemas/OtherLocator", + "project_entity": "#/components/schemas/ProjectEntityLocator", + "project_name": "#/components/schemas/ProjectNameLocator", + "scm_repo": "#/components/schemas/ScmRepoLocator" + }, + "propertyName": "type" }, - "type": "object" - }, - "io.snyk.api.v1testdepgraph.request.DepGraph": { - "additionalProperties": {}, - "properties": { - "graph": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.Graph" + "oneOf": [ + { + "$ref": "#/components/schemas/ProjectEntityLocator" }, - "pkgManager": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.PackageManager" + { + "$ref": "#/components/schemas/ProjectNameLocator" }, - "pkgs": { - "items": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.Package" - }, - "type": "array" + { + "$ref": "#/components/schemas/ScmRepoLocator" }, - "schemaVersion": { - "type": "string" + { + "$ref": "#/components/schemas/LocalPathLocator" + }, + { + "$ref": "#/components/schemas/OtherLocator" } - }, - "required": [ - "schemaVersion", - "pkgManager", - "pkgs", - "graph" + ] + }, + "TestType": { + "description": "The type identifier for the \"tests\" resource.", + "enum": [ + "tests" ], - "type": "object" + "type": "string" }, - "io.snyk.api.v1testdepgraph.request.Graph": { - "additionalProperties": {}, + "TimeoutSpec": { + "description": "Specification for a test timeout policy. If the test does not complete within\nthe seconds specified, the test will instantly complete with the given outcome.", "properties": { - "nodes": { - "items": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.Node" - }, - "type": "array" + "outcome": { + "$ref": "#/components/schemas/PassFail" }, - "rootNodeId": { - "type": "string" + "seconds": { + "format": "uint32", + "type": "integer" } }, "required": [ - "rootNodeId", - "nodes" + "seconds", + "outcome" ], "type": "object" }, - "io.snyk.api.v1testdepgraph.request.Node": { - "additionalProperties": {}, + "Titles": { + "items": { + "type": "string" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "Tool": { + "description": "A tool (piece of software, etc)", "properties": { - "deps": { - "items": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.NodeRef" - }, - "type": "array" - }, - "nodeId": { + "name": { + "description": "Name of the tool", + "maxLength": 255, "type": "string" }, - "pkgId": { + "supplier": { + "$ref": "#/components/schemas/Party" + }, + "version": { + "description": "The version of this tool", + "nullable": true, "type": "string" } }, "required": [ - "nodeId", - "pkgId", - "deps" + "name" ], "type": "object" }, - "io.snyk.api.v1testdepgraph.request.NodeRef": { - "additionalProperties": {}, + "Type": { + "type": "string" + }, + "TypeDef": { + "description": "The type of an issue.", + "enum": [ + "package_vulnerability", + "license", + "cloud", + "code", + "custom", + "config", + "secrets" + ], + "example": "cloud", + "type": "string" + }, + "Types": { + "example": "resource", + "pattern": "^[a-z][a-z0-9]*(_[a-z][a-z0-9]*)*$", + "type": "string" + }, + "UpdateAssetAttributes": { + "additionalProperties": false, "properties": { - "nodeId": { - "type": "string" + "class": { + "$ref": "#/components/schemas/AssetClass" + }, + "labels": { + "$ref": "#/components/schemas/AssetLabelsUpdate" + }, + "tags": { + "$ref": "#/components/schemas/AssetTagsUpdate" } }, - "required": [ - "nodeId" - ], "type": "object" }, - "io.snyk.api.v1testdepgraph.request.Package": { - "additionalProperties": {}, + "UpdateAssetRequestData": { + "description": "Asset update request data", "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdateAssetAttributes" + }, "id": { + "format": "uuid", "type": "string" }, - "info": { - "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.PackageInfo" + "type": { + "enum": [ + "repository", + "image", + "package" + ], + "type": "string" } }, "required": [ + "type", "id", - "info" + "attributes" ], "type": "object" }, - "io.snyk.api.v1testdepgraph.request.PackageInfo": { - "additionalProperties": {}, + "UpdateAssignmentsPayload": { "properties": { - "name": { - "type": "string" + "assignments_ids": { + "items": { + "format": "uuid", + "type": "string" + }, + "type": "array" }, - "version": { + "due_date": { + "format": "date", "type": "string" } }, "required": [ - "name", - "version" + "assignments_ids", + "due_date" ], "type": "object" }, - "io.snyk.api.v1testdepgraph.request.PackageManager": { - "additionalProperties": {}, + "UpdateBrokerConnectionIntegrationWithContext": { + "additionalProperties": false, "properties": { - "name": { - "type": "string" + "data": { + "properties": { + "attributes": { + "properties": { + "org_id": { + "format": "uuid", + "type": "string" + } + }, + "required": [ + "org_id" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "broker_integration" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type", + "id" + ], + "type": "object" } }, "required": [ - "name" + "data" ], "type": "object" }, - "name": { - "description": "User-defined name of the collection", - "maxLength": 255, - "minLength": 1, - "pattern": "^([a-zA-Z0-9 _\\-\\/:.])+$", - "type": "string" - } - }, - "securitySchemes": { - "APIToken": { - "description": "API key value must be prefixed with \\\"Token \\\".", - "in": "header", - "name": "Authorization", - "type": "apiKey" - }, - "BearerAuth": { - "scheme": "bearer", - "type": "http" - } - } - }, - "info": { - "title": "Snyk API", - "version": "REST" - }, - "openapi": "3.0.3", - "paths": { - "/custom_base_images": { - "get": { - "description": "Get a list of custom base images with support for ordering and filtering.\nEither the org_id or group_id parameters must be set to authorize successfully.\nIf sorting by version, the repository filter is required.\n", - "operationId": "getCustomBaseImages", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "The ID of the container project that the custom base image is based off of.", - "in": "query", - "name": "project_id", - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The organization ID of the custom base image", - "in": "query", - "name": "org_id", - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The group ID of the custom base image", - "in": "query", - "name": "group_id", - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Repository" - }, - { - "$ref": "#/components/parameters/Tag" - }, - { - "$ref": "#/components/parameters/IncludeInRecommendations" + "UpdateBrokerConnectionIntegrationWithContextResponse": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/BrokerConnectionIntegrationWithContextResource" }, - { - "description": "Which column to sort by. \nIf sorting by version, the versioning schema is used.\n", - "in": "query", - "name": "sort_by", - "schema": { - "enum": [ - "repository", - "tag", - "version" - ], - "type": "string" - } + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" }, - { - "$ref": "#/components/parameters/SortDirection" + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } + }, + "required": [ + "data" ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CustomBaseImageCollectionResponse" - } - } - }, - "description": "Returns custom base images", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "type": "object" + }, + "UpdateBrokerConnectionRequest": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/CommonConnectionAttributes" }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "id": { + "format": "uuid", + "readOnly": true, + "type": "string" }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "type": { + "enum": [ + "broker_connection" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "UpdateBrokerContextRequest": { + "additionalProperties": false, + "properties": { + "data": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/BrokerContextAttributes" }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "id": { + "format": "uuid", + "type": "string" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "type": { + "enum": [ + "broker_context" + ], + "type": "string" } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" + }, + "required": [ + "attributes", + "type", + "id" + ], + "type": "object" } }, - "summary": "Get a custom base image collection", - "tags": [ - "Custom Base Images" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-08-21", - "2023-09-20", - "2024-01-04", - "2024-05-31" + "required": [ + "data" ], - "x-snyk-api-resource": "custombaseimages", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" + "type": "object" }, - "post": { - "description": "In order to create a custom base image, you first need to import your base images into Snyk.\nYou can do this through the CLI, UI, or API.\n\nThis endpoint marks an image as a custom base image. This means that the image will get\nadded to the pool of images from which Snyk can recommend base image upgrades.\n\nNote, after the first image in a repository gets added, a versioning schema cannot be passed in this endpoint.\nTo update the versioning schema, the PATCH endpoint must be used.\n", - "operationId": "createCustomBaseImage", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "UpdateBrokerDeploymentRequest": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/BrokerDeploymentUpdateResource" } + }, + "required": [ + "data" ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CustomBaseImagePostRequest" + "type": "object" + }, + "UpdateCollectionRequest": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "name": { + "$ref": "#/components/schemas/name" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/Types" } - } - }, - "description": "The properties used in the creation of a custom base image" + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + } }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CustomBaseImageResponse" + "required": [ + "data" + ], + "type": "object" + }, + "UpdateCollectionWithProjectsRequest": { + "additionalProperties": false, + "properties": { + "data": { + "description": "IDs of items to add to a collection", + "items": { + "additionalProperties": false, + "properties": { + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "description": "Type of the item id", + "enum": [ + "project" + ], + "type": "string" } - } - }, - "description": "Successfully created a custom base image", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" + "required": [ + "id", + "type" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" } }, - "summary": "Create a Custom Base Image from an existing container project", - "tags": [ - "Custom Base Images" + "required": [ + "data" ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-08-21", - "2023-09-20", - "2024-01-04", - "2024-05-31" + "type": "object" + }, + "UpdateDeploymentCredentialRequest": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/DeploymentCredentialResource" + } + }, + "required": [ + "data" ], - "x-snyk-api-resource": "custombaseimages", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" - } - }, - "/custom_base_images/{custombaseimage_id}": { - "delete": { - "description": "Delete a custom base image resource. (the related container project is unaffected)", - "operationId": "deleteCustomBaseImage", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "type": "object" + }, + "UpdateGroupPolicyAttributes": { + "additionalProperties": false, + "description": "Attributes of a policy that can be updated.\nAt least one of 'name', 'conditions_group', 'action_type', or 'action' must be provided.\n", + "minProperties": 1, + "properties": { + "action": { + "$ref": "#/components/schemas/GroupPolicyAction" }, - { - "$ref": "#/components/parameters/CustomBaseImageId" + "action_type": { + "$ref": "#/components/schemas/GroupPolicyActionType" + }, + "conditions_group": { + "$ref": "#/components/schemas/GroupPolicyConditionsGroup" + }, + "name": { + "type": "string" } - ], - "responses": { - "204": { - "description": "Successfully deleted the custom base image", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "type": "object" + }, + "UpdateGroupPolicyPayload": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdateGroupPolicyAttributes" }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "id": { + "description": "the UUID of the policy to update.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "type": { + "enum": [ + "policy" + ], + "type": "string" } - } - }, - "401": { - "$ref": "#/components/responses/401" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" + }, + "required": [ + "type", + "attributes", + "id" + ], + "type": "object" } }, - "summary": "Delete a custom base image", - "tags": [ - "Custom Base Images" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-08-21", - "2023-09-20", - "2024-01-04", - "2024-05-31" + "required": [ + "data" ], - "x-snyk-api-resource": "custombaseimages", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" + "type": "object" }, - "get": { - "description": "Get a custom base image", - "operationId": "getCustomBaseImage", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "UpdateOrgMembershipRequestBody20240825": { + "additionalProperties": false, + "properties": { + "attributes": { + "type": "object" }, - { - "$ref": "#/components/parameters/CustomBaseImageId" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CustomBaseImageResponse" - } + "id": { + "description": "The Snyk ID of the organization.", + "example": "f60ff965-6889-4db2-8c86-0285d62f35ab", + "format": "uuid", + "type": "string" + }, + "relationships": { + "additionalProperties": false, + "properties": { + "role": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "id": { + "description": "The Snyk ID of the Org Role.", + "example": "f60ff965-6889-4db2-8c86-0285d62f35ab", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The type of the resource. Always 'org_role'.", + "example": "org_role", + "type": "string" + } + }, + "required": [ + "type", + "id" + ], + "type": "object" + } + }, + "type": "object" } }, - "description": "Returns a custom base image", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" + "required": [ + "role" + ], + "type": "object" }, - "500": { - "$ref": "#/components/responses/500" + "type": { + "description": "The type of the resource. Always 'org_membership'.", + "example": "org_membership", + "type": "string" } }, - "summary": "Get a custom base image", - "tags": [ - "Custom Base Images" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-08-21", - "2023-09-20", - "2024-01-04", - "2024-05-31" + "required": [ + "type", + "id", + "relationships" ], - "x-snyk-api-resource": "custombaseimages", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" + "type": "object" }, - "patch": { - "description": "Updates a custom base image's attributes", - "operationId": "updateCustomBaseImage", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "UpdatePolicyAttributes": { + "additionalProperties": false, + "description": "Attributes of a policy that can be updated.\nAt least one of 'name', 'conditions_group', 'action', or 'review' must be provided.\n\nIn order to update the review field, the caller will need to have the\n\"Review Ignore Request\" permission.\n", + "properties": { + "action": { + "$ref": "#/components/schemas/PolicyActionIgnore" }, - { - "$ref": "#/components/parameters/CustomBaseImageId" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CustomBaseImagePatchRequest" - } - } + "conditions_group": { + "$ref": "#/components/schemas/PolicyConditionsGroup" }, - "description": "custom base image to be updated" + "name": { + "maxLength": 255, + "type": "string" + }, + "review": { + "$ref": "#/components/schemas/UpdatePolicyReview" + } }, - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CustomBaseImageResponse" - } - } - }, - "description": "Returns the updated custom base image", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "type": "object" + }, + "UpdatePolicyPayload": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdatePolicyAttributes" }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "id": { + "description": "the UUID of the policy to update.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "meta": { + "$ref": "#/components/schemas/Meta" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "type": { + "enum": [ + "policy" + ], + "type": "string" } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" + }, + "required": [ + "type", + "attributes" + ], + "type": "object" } }, - "summary": "Update a custom base image", - "tags": [ - "Custom Base Images" + "required": [ + "data" ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-08-21", - "2023-09-20", - "2024-01-04", - "2024-05-31" + "type": "object" + }, + "UpdatePolicyReview": { + "description": "Review update.\n\nTo provide an optional message relating to the review state change, add a string 'message' property to the 'meta' object.\n", + "enum": [ + "pending", + "approved", + "rejected" ], - "x-snyk-api-resource": "custombaseimages", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" - } - }, - "/groups": { - "get": { - "description": "Returns a list of groups which a user is a member of", - "operationId": "listGroups", - "parameters": [ - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" + "type": "string" + }, + "UpdateSastRuleExtensionConfiguration": { + "additionalProperties": false, + "description": "Configuration for update request. All fields are optional to support partial updates.", + "minProperties": 1, + "properties": { + "rule_keys": { + "$ref": "#/components/schemas/SastRuleExtensionRuleKeys" }, - { - "$ref": "#/components/parameters/Version" + "type": { + "$ref": "#/components/schemas/SastRuleExtensionConfigurationType" } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/Group" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" - } - } - }, - "description": "A list of groups is returned", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } + }, + "type": "object" + }, + "UpdateSastRuleExtensionRequestAttributes": { + "additionalProperties": false, + "minProperties": 1, + "properties": { + "configuration": { + "$ref": "#/components/schemas/UpdateSastRuleExtensionConfiguration" }, - "400": { - "$ref": "#/components/responses/400" + "description": { + "$ref": "#/components/schemas/RuleExtensionDescription" }, - "401": { - "$ref": "#/components/responses/401" + "signature": { + "$ref": "#/components/schemas/SastRuleExtensionSignature" }, - "403": { - "$ref": "#/components/responses/403" + "status": { + "$ref": "#/components/schemas/RuleExtensionStatus" + } + }, + "type": "object" + }, + "UpdateSastRuleExtensionRequestBody": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/UpdateSastRuleExtensionRequestData" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "UpdateSastRuleExtensionRequestData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdateSastRuleExtensionRequestAttributes" }, - "404": { - "$ref": "#/components/responses/404" + "id": { + "$ref": "#/components/schemas/SastRuleExtensionId" }, - "500": { - "$ref": "#/components/responses/500" + "type": { + "$ref": "#/components/schemas/RuleExtensionRequestType" } }, - "summary": "Get all groups (Early Access)", - "tags": [ - "Groups" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-01-31~experimental", - "2023-01-30~beta" + "required": [ + "id", + "type", + "attributes" ], - "x-snyk-api-resource": "groups", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-01-30~beta", - "x-stability-level": "beta" - } - }, - "/groups/{group_id}": { - "get": { - "description": "Get a group\n\n#### Required permissions\n\n- `View Groups (group.read)`", - "operationId": "getGroup", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "type": "object" + }, + "UpdateSecretsRuleExtensionAttributes": { + "additionalProperties": false, + "minProperties": 1, + "properties": { + "description": { + "$ref": "#/components/schemas/RuleExtensionDescription" }, - { - "description": "Unique identifier of the group.", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "example": "00000000-0000-0000-0000-000000000000", - "format": "uuid", - "type": "string" - } + "signature": { + "$ref": "#/components/schemas/SecretsRegexSignature" + }, + "status": { + "$ref": "#/components/schemas/RuleExtensionStatus" } + }, + "type": "object" + }, + "UpdateSecretsRuleExtensionRequestBody": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/UpdateSecretsRuleExtensionRequestData" + } + }, + "required": [ + "data" ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GroupResponse" - } - } - }, - "description": "Returns an instance of a Group", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" + "type": "object" + }, + "UpdateSecretsRuleExtensionRequestData": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdateSecretsRuleExtensionAttributes" }, - "401": { - "$ref": "#/components/responses/401" + "id": { + "$ref": "#/components/schemas/RuleExtensionId" }, - "403": { - "$ref": "#/components/responses/403" + "type": { + "$ref": "#/components/schemas/RuleExtensionRequestType" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + }, + "UpdateTenantMembershipRequestData": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "type": "object" }, - "404": { - "$ref": "#/components/responses/404" + "id": { + "$ref": "#/components/schemas/TenantMembershipId" }, - "409": { - "$ref": "#/components/responses/409" + "relationships": { + "$ref": "#/components/schemas/UpdateTenantMembershipRequestRelationships" }, - "500": { - "$ref": "#/components/responses/500" + "type": { + "$ref": "#/components/schemas/TenantMembershipType" } }, - "summary": "Get Group (Early Access)", - "tags": [ - "Group" + "required": [ + "id", + "type", + "relationships" ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-01-31~experimental", - "2023-01-30~beta", - "2024-04-25~experimental" + "type": "object" + }, + "UpdateTenantMembershipRequestRelationships": { + "additionalProperties": false, + "properties": { + "role": { + "$ref": "#/components/schemas/TenantMembershipTenantRoleRelationshipBasic" + } + }, + "required": [ + "role" ], - "x-snyk-api-resource": "groups", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-01-30~beta", - "x-stability-level": "beta" - } - }, - "/groups/{group_id}/apps/installs": { - "get": { - "description": "Get a list of Snyk Apps installed for a Group\n\n#### Required permissions\n\n- `View Apps (group.app.read)`", - "operationId": "getAppInstallsForGroup", - "parameters": [ - { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "app" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "type": "object" + }, + "UpdateTenantRoleRequestAttributes": { + "additionalProperties": false, + "minProperties": 1, + "properties": { + "description": { + "description": "The description of the tenant role.", + "maxLength": 160, + "minLength": 1, + "type": "string" }, - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", + "name": { + "description": "The name of the tenant role.", + "maxLength": 60, + "minLength": 1, + "type": "string" + }, + "permissions": { + "description": "Requested permissions of the tenant role. Must be the entire set of permissions.", + "items": { "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Updated": { + "description": "The last time the settings were updated.", + "example": "2021-11-12T10:31:06.026Z", + "format": "date-time", + "type": "string" + }, + "UpgradePackageAdvice": { + "description": "Upgrade a package from one version to another.", + "example": { + "format": "upgrade_package_advice", + "package_name": "lodash", + "upgrade_paths": [ + { + "dependency_path": [ + { + "name": "lodash", + "version": "2.1.1" + }, + { + "name": "minimist", + "version": "4.7.6" + } + ], + "is_drop": false } + ] + }, + "properties": { + "format": { + "enum": [ + "upgrade_package_advice" + ], + "type": "string" }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" + "package_name": { + "description": "The package that's receiving an upgrade to fix this vulnerability", + "type": "string" }, - { - "$ref": "#/components/parameters/EndingBefore" + "upgrade_paths": { + "description": "Upgrading a package may lead to one or more paths to change. These paths are modelled as evidence\nin DependencyPathEvidence.\n\nUltimately upgradePaths illustrates the minimum version upgrades that need to happen to apply this action.", + "items": { + "$ref": "#/components/schemas/UpgradePath" + }, + "type": "array" + } + }, + "required": [ + "format", + "package_name", + "upgrade_paths" + ], + "type": "object" + }, + "UpgradePath": { + "description": "Upgrade path model all known dependency paths that will change when applying an upgrade action.", + "properties": { + "dependency_path": { + "items": { + "$ref": "#/components/schemas/Package" + }, + "maxItems": 100, + "type": "array" }, - { - "$ref": "#/components/parameters/Limit" + "is_drop": { + "description": "A drop describes an upgrade path, where the vulnerability gets addressed by removing the vulnerable dependency.\nThis typically happens when a package somewhere mid-way drops this library in newer versions.\n\nNote: For drops, the length of the upgradePath will be smaller than the length of the original dependencyPath.", + "type": "boolean" } + }, + "required": [ + "dependency_path", + "is_drop" ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/AppInstallData" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" - } - } + "type": "object" + }, + "UploadResource": { + "description": "Resource referring to an Upload Revision created through the\nFile Upload API (currently in Closed Beta).\n\nRevisions contain collections of files uploaded by clients to\nSnyk for testing.\n\nUploadResources can be marked either as SBOM or Source to\nindicate the contents of the Revision.\n\nSBOM UploadResources should provide the following fields:\n- type\n- revision_id\n- name\n- file_patterns (may be empty)\n\nSource UploadResources should provide the following fields:\n- type\n- revision_id\n- repository_url\n- root_folder_id\n- file_patterns (may be empty)\n\nCurrently supported scans utilizing UploadResources are:\n- SBOM (SCA): (1) UploadResource containing an SBOM\n- SBOM + Reachability Analysis (SCA): (1) UploadResource containing an SBOM, (1) UploadResource containing Source files.\n- Secrets: (1) UploadResource containing Source files", + "example": { + "content_type": "source", + "file_patterns": [], + "repository_url": "https://github.com/example/repo", + "revision_id": "00000000-0000-0000-0000-000000000000", + "root_folder_id": ".", + "type": "upload" + }, + "properties": { + "content_type": { + "description": "Content present in the Upload Revision.\n\nAccepted content types are SBOMs, Source files, and container analysis.", + "enum": [ + "sbom", + "source", + "container_analysis" + ], + "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": "#/components/schemas/String256" }, - "description": "A list of apps installed for the specified group.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } + "maxItems": 20, + "type": "array" }, - "400": { - "$ref": "#/components/responses/400__0" + "name": { + "description": "A name to assign to the SBOM contained in the UploadRevision.\n\nOverrides the filename in the UploadRevision.", + "maxLength": 256, + "type": "string" }, - "401": { - "$ref": "#/components/responses/401__0" + "repository_url": { + "description": "Repository URL at which the Source files are stored.", + "maxLength": 1024, + "type": "string" }, - "403": { - "$ref": "#/components/responses/403" + "revision_id": { + "description": "The ID returned from the File Upload API for a given Revision.\nThe File Upload API is released in Closed Beta.\nCustomers with access may view the preview documentation for\ninformation on its usage.", + "example": "5025c59b-c4dd-48e3-b98a-e98d838f4c9b", + "maxLength": 1024, + "type": "string" }, - "404": { - "$ref": "#/components/responses/404__0" + "root_folder_id": { + "description": "Folder inside the UploadRevision at which the Source files are located.", + "maxLength": 1024, + "type": "string" }, - "409": { - "$ref": "#/components/responses/409" + "scm_context": { + "$ref": "#/components/schemas/ScmContext" }, - "500": { - "$ref": "#/components/responses/500__0" + "type": { + "enum": [ + "upload" + ], + "type": "string" } }, - "summary": "Get a list of Snyk Apps installed for a Group", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "required": [ + "type", + "revision_id", + "content_type", + "file_patterns" ], - "x-snyk-api-resource": "app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", - "x-stability-level": "stable" + "type": "object" }, - "post": { - "description": "Install a Snyk App to this group, the Snyk App must use unattended authentication e.g. client credentials\n\n#### Required permissions\n\n- `Install Apps (group.app.install)`", - "operationId": "createGroupAppInstall", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, + "User": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "active": { + "description": "Whether the user status is enabled or not", + "example": true, + "type": "boolean" + }, + "email": { + "description": "The email of the user.", + "example": "user@someorg.com", + "type": "string" + }, + "membership": { "properties": { - "data": { - "properties": { - "type": { - "enum": [ - "app_install" - ], - "example": "app_install", - "type": "string" - } - }, - "type": "object" + "created_at": { + "description": "The date the membership was established.", + "example": "2022-09-14T09:19:29.206Z", + "format": "date-time", + "type": "string" }, - "relationships": { - "additionalProperties": false, - "properties": { - "app": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "id": { - "$ref": "#/components/schemas/Uuid" - }, - "type": { - "enum": [ - "app" - ], - "example": "app", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "required": [ - "app" + "strategy": { + "description": "Whether the membership is a direct, or indirect membership.", + "enum": [ + "direct", + "indirect" ], - "type": "object" + "example": "direct", + "type": "string" } }, - "required": [ - "data", - "relationships" - ], "type": "object" - } - } - }, - "description": "App Install to be created" - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppInstallWithClient" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" - } - } - }, - "description": "The newly created app install.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "name": { + "description": "The name of the user.", + "example": "user", + "type": "string" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "username": { + "description": "The username of the user.", + "example": "username", + "type": "string" } - } - }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" + }, + "type": "object" }, - "409": { - "$ref": "#/components/responses/409" + "id": { + "description": "The Snyk ID corresponding to this user", + "example": "55a348e2-c3ad-4bbc-b40e-9b232d1f4121", + "format": "uuid", + "type": "string" }, - "500": { - "$ref": "#/components/responses/500__0" + "type": { + "description": "Content type.", + "example": "user", + "type": "string" } }, - "summary": "Install a Snyk App for a Group", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "required": [ + "type", + "id", + "attributes" ], - "x-snyk-api-resource": "app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", - "x-stability-level": "stable" - } - }, - "/groups/{group_id}/apps/installs/{install_id}": { - "delete": { - "description": "Revoke app authorization for a Snyk group with install ID\n\n#### Required permissions\n\n- `Install Apps (group.app.install)`", - "operationId": "deleteGroupAppInstallById", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "type": "object" + }, + "User20240422": { + "additionalProperties": false, + "properties": { + "avatar_url": { + "description": "The avatar url of the user.", + "example": "https://snyk.io/avatar.png", + "format": "uri", + "type": "string" }, - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "default_org_context": { + "description": "ID of the default org for the user.", + "format": "uuid", + "type": "string" }, - { - "$ref": "#/components/parameters/InstallId" + "email": { + "description": "The email of the user.", + "example": "user@someorg.com", + "type": "string" + }, + "name": { + "description": "The name of the user.", + "example": "user", + "type": "string" + }, + "username": { + "description": "The username of the user.", + "example": "username", + "type": "string" } + }, + "required": [ + "name", + "email", + "avatar_url" ], - "responses": { - "204": { - "description": "The Snyk App install is revoked, with no content (no errors).", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "type": "object" + }, + "UserAccountType": { + "description": "The type of the user account.", + "example": "user", + "type": "string" + }, + "UserEmail": { + "description": "The e-mail address of the user.", + "example": "user@example.com", + "type": "string" + }, + "UserId": { + "description": "Unique identifier for a user.", + "example": "00000000-0000-0000-0000-000000000000", + "format": "uuid", + "type": "string" + }, + "UserIsActive": { + "description": "Whether the user is active.", + "example": true, + "type": "boolean" + }, + "UserLoginMethod": { + "description": "The authentication method used by the user.", + "example": "saml", + "type": "string" + }, + "UserName": { + "description": "The real name of the user.", + "example": "Firstname Lastname", + "type": "string" + }, + "UserPatchRequestBody": { + "additionalProperties": false, + "properties": { + "attributes": { + "properties": { + "membership": { + "nullable": true, + "properties": { + "role": { + "description": "Role name", + "example": "MEMBER", + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "membership" + ], + "type": "object" + }, + "id": { + "description": "The Snyk ID corresponding to this user", + "example": "55a348e2-c3ad-4bbc-b40e-9b232d1f4121", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "Content type", + "example": "user", + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, + "UserRelationship": { + "properties": { + "data": { + "properties": { + "attributes": { + "properties": { + "email": { + "type": "string" + }, + "username": { + "type": "string" + } + }, + "required": [ + "email", + "username" + ], + "type": "object" }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "id": { + "type": "string" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "type": { + "enum": [ + "user" + ], + "type": "string" } - } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" }, - "400": { - "$ref": "#/components/responses/400__0" + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "links", + "data" + ], + "type": "object" + }, + "UserType": { + "description": "Resource type for users.", + "enum": [ + "user" + ], + "type": "string" + }, + "UserUsername": { + "description": "The username of the user.", + "example": "username", + "type": "string" + }, + "UsersProgress": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/UsersProgressAttributes" }, - "401": { - "$ref": "#/components/responses/401__0" + "id": { + "format": "uuid", + "type": "string" }, - "403": { - "$ref": "#/components/responses/403" + "relationships": { + "$ref": "#/components/schemas/ProgressRelationships" }, - "404": { - "$ref": "#/components/responses/404__0" + "type": { + "enum": [ + "progress" + ], + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes", + "relationships" + ], + "type": "object" + }, + "UsersProgressAttributes": { + "properties": { + "completion_date": { + "format": "date-time", + "type": "string" }, - "409": { - "$ref": "#/components/responses/409" + "completion_history": { + "items": { + "format": "date-time", + "type": "string" + }, + "type": "array" }, - "500": { - "$ref": "#/components/responses/500__0" + "is_expired": { + "type": "boolean" + }, + "resource": { + "enum": [ + "learning_path", + "lesson" + ], + "type": "string" + }, + "status": { + "enum": [ + "completed", + "inProgress", + "todo" + ], + "type": "string" } }, - "summary": "Revoke app authorization for a Snyk group with install ID", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "required": [ + "status", + "resource", + "completion_history" ], - "x-snyk-api-resource": "app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", - "x-stability-level": "stable" - } - }, - "/groups/{group_id}/apps/installs/{install_id}/secrets": { - "post": { - "description": "Manage client secret for non-interactive Snyk App installations\n\n#### Required permissions\n\n- `Edit Apps (group.app.edit)`", - "operationId": "updateGroupAppInstallSecret", - "parameters": [ - { - "$ref": "#/components/parameters/Version" + "type": "object" + }, + "UsersProgressResponse": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/UsersProgress" + }, + "type": "array" }, - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" }, - { - "$ref": "#/components/parameters/InstallId" + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } + }, + "required": [ + "jsonapi", + "links", + "data" ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "mode": { - "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", - "enum": [ - "replace", - "create", - "delete" - ], - "type": "string" - }, - "secret": { - "description": "Secret to delete when using `delete` mode", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - "type": { - "enum": [ - "app" - ], - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } + "type": "object" + }, + "Uuid": { + "format": "uuid", + "type": "string" + }, + "VcsReference": { + "description": "A reference to a version control system, with optional branch, tag, or revision information", + "properties": { + "branch": { + "description": "The VCS branch", + "maxLength": 255, + "nullable": true, + "type": "string" + }, + "revision": { + "description": "Commit SHA or revision", + "maxLength": 2048, + "nullable": true, + "type": "string" + }, + "tag": { + "description": "The VCS tag, if applicable", + "maxLength": 2048, + "nullable": true, + "type": "string" + }, + "url": { + "description": "A link to the VCS repository", + "format": "uri", + "maxLength": 2048, + "type": "string" } }, - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppInstallDataWithSecret" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" - } - } - }, - "description": "Secret has been updated.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "required": [ + "url" + ], + "type": "object" + }, + "VersioningSchema": { + "allOf": [ + { + "oneOf": [ + { + "$ref": "#/components/schemas/VersioningSchemaSemverType" }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + { + "$ref": "#/components/schemas/VersioningSchemaCustomType" }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + { + "$ref": "#/components/schemas/VersioningSchemaSingleSelectionType" } - } - }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" + ] + } + ], + "description": "The versioning scheme used by images in the repository.\n\nA versioning schema is a system for identifying and organizing different versions of a project. \nIt is used to track changes and updates to the project over time, and to help users identify which version they are using. \nA versioning schema typically consists of a series of numbers or labels that are incremented to reflect the progression of versions. \nFor example, a versioning schema might use a series of numbers, such as \"1.0\", \"1.1\", \"2.0\", and so on, to indicate major and minor releases of a product. \nA consistent and well-defined versioning schema helps users and tools understand and track the development of a project.\n" + }, + "VersioningSchemaCustomType": { + "additionalProperties": false, + "description": "The Custom Schema type is a way for Snyk to understand your company’s container image tag versioning scheme,\nenabling Snyk to give more accurate base image upgrade recommendations.\n\nThis schema type is essentially a regular expression that groups the different parts of an image’s tag into comparable sections.\n\nIf your container image's tags follow a versioning scheme other than Semantic Versioning (SemVer), \nit is highly recommended that you select the \"Custom Versioning\" schema for your image repositories.\n", + "properties": { + "expression": { + "description": "The regular expression used to describe the format of tags.\nKeep in mind that backslashes in the expression need to be escaped due to being encompassed in a JSON string.\n", + "example": "(?\u003cC0\u003e.)\\-(?\u003cM2\u003e.*)", + "type": "string" }, - "409": { - "$ref": "#/components/responses/409" + "label": { + "description": "A customizable string that can be set for a custom versioning schema to describe its meaning.\nThis label has no function.\n", + "example": "calendar with flavor schema", + "type": "string" }, - "500": { - "$ref": "#/components/responses/500__0" + "type": { + "enum": [ + "custom" + ], + "type": "string" } }, - "summary": "Manage client secret for non-interactive Snyk App installations", - "tags": [ - "Apps" + "required": [ + "type", + "expression" ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "type": "object" + }, + "VersioningSchemaSemverType": { + "additionalProperties": false, + "properties": { + "type": { + "enum": [ + "semver" + ], + "example": "semver", + "type": "string" + } + }, + "required": [ + "type" ], - "x-snyk-api-resource": "app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", - "x-stability-level": "stable" - } - }, - "/groups/{group_id}/assets/search": { - "post": { - "description": "List Assets with filters\n\n#### Required permissions\n\n- `View Groups (group.read)`", - "operationId": "listAssets", - "parameters": [ - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "type": "object" + }, + "VersioningSchemaSingleSelectionType": { + "additionalProperties": false, + "description": "The Single Selection Versioning Schema allows manual setting of which image should be given as a recommendation.\n\nOnly one image can be set as the current recommendation. If no images are set as the current selection, \nno recommendation will be given.\n\nIt is recommended to use this versioning schema if your repository's tags aren't supported by the other schemas.\n", + "properties": { + "is_selected": { + "description": "Whether this image should be the recommendation. Only one image can be selected at a given time. Setting this\nas true will remove previous selection.\n", + "example": true, + "type": "boolean" }, - { - "$ref": "#/components/parameters/Version" + "type": { + "enum": [ + "single-selection" + ], + "example": "single-selection", + "type": "string" } + }, + "required": [ + "type", + "is_selected" ], - "requestBody": { - "content": { - "application/json": { - "examples": { - "example1": { - "summary": "One filter, one attribute", - "value": { - "query": { - "attributes": { - "attribute": "type", - "operator": "equal", - "values": [ - "repository" + "type": "object" + }, + "WorkloadAttributes": { + "properties": { + "required": { + "properties": { + "workload_internal_uri": { + "type": "string" + }, + "workload_type_id": { + "format": "uuid", + "type": "string" + } + }, + "required": [ + "workload_type_id", + "workload_internal_uri" + ], + "type": "object" + }, + "type": { + "enum": [ + "workload" + ], + "type": "string" + }, + "validations": { + "items": { + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "type", + "required" + ], + "type": "object" + }, + "YarnBuildArgs": { + "additionalProperties": false, + "properties": { + "root_workspace": { + "type": "string" + } + }, + "required": [ + "root_workspace" + ], + "type": "object" + }, + "ecosystem_version": { + "description": "For Dotnet: The .NET target framework this project is expected to run on. If multiple, they should be split in the calling end and sent to isolated builds separately.\nFor Golang: The version of the Golang CLI that should be used on the Lambda executing the environment.\n", + "example": "2.3.1", + "type": "string" + }, + "io.snyk.api.common.Error": { + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "format": "uuid", + "type": "string" + }, + "links": { + "$ref": "#/components/schemas/io.snyk.api.common.ErrorLink" + }, + "meta": { + "type": "object" + }, + "source": { + "properties": { + "parameter": { + "type": "string" + }, + "pointer": { + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "io.snyk.api.common.ErrorDocument": { + "properties": { + "errors": { + "items": { + "$ref": "#/components/schemas/io.snyk.api.common.Error" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + }, + "io.snyk.api.common.ErrorLink": { + "additionalProperties": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "properties": { + "about": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + } + }, + "type": "object" + }, + "io.snyk.api.common.JsonApi": { + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "enum": [ + "1.0" + ], + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + }, + "io.snyk.api.common.LinkObject": { + "properties": { + "href": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkString" + }, + "meta": { + "$ref": "#/components/schemas/io.snyk.api.common.Meta" + } + }, + "required": [ + "href" + ], + "type": "object" + }, + "io.snyk.api.common.LinkProperty": { + "oneOf": [ + { + "$ref": "#/components/schemas/io.snyk.api.common.LinkString" + }, + { + "$ref": "#/components/schemas/io.snyk.api.common.LinkObject" + } + ] + }, + "io.snyk.api.common.LinkString": { + "format": "uri", + "type": "string" + }, + "io.snyk.api.common.Meta": { + "additionalProperties": {}, + "description": "Free-form object that may contain non-standard information.", + "type": "object" + }, + "io.snyk.api.common.PaginatedLinks": { + "properties": { + "first": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "last": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "next": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "prev": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "self": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + } + }, + "type": "object" + }, + "io.snyk.api.common.RelatedLink": { + "properties": { + "related": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + } + }, + "type": "object" + }, + "io.snyk.api.v1testdepgraph.request.Graph": { + "additionalProperties": {}, + "properties": { + "nodes": { + "items": { + "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.Node" + }, + "type": "array" + }, + "rootNodeId": { + "type": "string" + } + }, + "required": [ + "rootNodeId", + "nodes" + ], + "type": "object" + }, + "io.snyk.api.v1testdepgraph.request.Node": { + "additionalProperties": {}, + "properties": { + "deps": { + "items": { + "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.NodeRef" + }, + "type": "array" + }, + "nodeId": { + "type": "string" + }, + "pkgId": { + "type": "string" + } + }, + "required": [ + "nodeId", + "pkgId", + "deps" + ], + "type": "object" + }, + "io.snyk.api.v1testdepgraph.request.NodeRef": { + "additionalProperties": {}, + "properties": { + "nodeId": { + "type": "string" + } + }, + "required": [ + "nodeId" + ], + "type": "object" + }, + "io.snyk.api.v1testdepgraph.request.Package": { + "additionalProperties": {}, + "properties": { + "id": { + "type": "string" + }, + "info": { + "$ref": "#/components/schemas/io.snyk.api.v1testdepgraph.request.PackageInfo" + } + }, + "required": [ + "id", + "info" + ], + "type": "object" + }, + "io.snyk.api.v1testdepgraph.request.PackageInfo": { + "additionalProperties": {}, + "properties": { + "name": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "required": [ + "name", + "version" + ], + "type": "object" + }, + "io.snyk.api.v1testdepgraph.request.PackageManager": { + "additionalProperties": {}, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "isolation_key": { + "description": "A unique key that will be appended as part of the Lambda name generation together with the ecosystem.\nThe isolation key works more or less like you would think a cache key. The more \"generalized\" it is, the\nmore likely the chance of cache hit.\nIn this solution, supplying the same string on each request will result in a one-time Lambda creation delay,\nand possibly re-use of storage upon consecutive requests, at least if done within a certain time frame.\nIn contrast, supplying a unique key on each request will cause a new Lambda to be created every time.\n", + "example": "123-456-789", + "pattern": "^[a-zA-Z0-9_-]{1,128}$", + "type": "string" + }, + "name": { + "description": "User-defined name of the collection", + "maxLength": 255, + "minLength": 1, + "pattern": "^([a-zA-Z0-9 _\\-\\/:.])+$", + "type": "string" + }, + "project_id": { + "description": "Public ID of the Snyk project being scanned. Forwarded to the audit log when a scan fails so\nthat consumers can correlate oss.scan.error events back to a specific project. Omit for flows\nwith no associated project record (e.g. ad-hoc CLI scans).\n", + "example": "5fe1be23-4d68-4d6e-9eed-2c4dc7c0a8e1", + "format": "uuid", + "type": "string" + }, + "repository_info": { + "properties": { + "branch": { + "type": "string" + }, + "isPrivateTarget": { + "type": "boolean" + }, + "sha": { + "pattern": "^[a-f0-9]{7,40}$", + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url" + ], + "type": "object" + }, + "resolve_pipenv_options": { + "properties": { + "includeDevDependencies": { + "type": "boolean" + } + }, + "type": "object" + }, + "resolve_uv_options": { + "properties": { + "include_dev_dependencies": { + "type": "boolean" + } + }, + "type": "object" + }, + "use_proxy": { + "description": "Whether to use the isolated builds proxy. The proxy will decrypt credentials on the fly, to prevent the untrusted isolated builds\nenvironment from having access to the credentials themselves.\nThis feature is currently opt-in, but will become mandatory in the future for certain ecosystems.\n", + "type": "boolean" + }, + "uv_workspace": { + "additionalProperties": false, + "properties": { + "package_name": { + "description": "uv workspace member name, passed to `uv export --package`.", + "example": "foo", + "type": "string" + }, + "pyproject_toml": { + "description": "Base64-encoded contents of the workspace member's pyproject.toml.", + "type": "string" + }, + "relative_path": { + "description": "Path to the member's pyproject.toml (incl. filename) relative to uv.lock.", + "example": "packages/foo/pyproject.toml", + "type": "string" + } + }, + "required": [ + "pyproject_toml", + "relative_path", + "package_name" + ], + "type": "object" + } + }, + "securitySchemes": { + "APIToken": { + "description": "API key value must be prefixed with \\\"Token \\\".", + "in": "header", + "name": "Authorization", + "type": "apiKey" + }, + "BearerAuth": { + "scheme": "bearer", + "type": "http" + } + } + }, + "info": { + "title": "Snyk API", + "version": "REST" + }, + "openapi": "3.0.3", + "paths": { + "/custom_base_images": { + "get": { + "description": "Get a list of custom base images with support for ordering and filtering.\nEither the org_id or group_id parameters must be set to authorize successfully.\nIf sorting by version, the repository filter is required.\n", + "operationId": "getCustomBaseImages", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "The ID of the container project that the custom base image is based off of.", + "in": "query", + "name": "project_id", + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The organization ID of the custom base image", + "in": "query", + "name": "org_id", + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The group ID of the custom base image", + "in": "query", + "name": "group_id", + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Repository" + }, + { + "$ref": "#/components/parameters/Tag" + }, + { + "$ref": "#/components/parameters/IncludeInRecommendations" + }, + { + "description": "Which column to sort by. \nIf sorting by version, the versioning schema is used.\n", + "in": "query", + "name": "sort_by", + "schema": { + "enum": [ + "repository", + "tag", + "version" + ], + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SortDirection" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CustomBaseImageCollectionResponse" + } + } + }, + "description": "Returns custom base images", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a custom base image collection", + "tags": [ + "Custom Base Images" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-08-21", + "2023-09-20", + "2024-01-04", + "2024-05-31" + ], + "x-snyk-api-resource": "custombaseimages", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + }, + "post": { + "description": "In order to create a custom base image, you first need to import your base images into Snyk.\nYou can do this through the CLI, UI, or API.\n\nThis endpoint marks an image as a custom base image. This means that the image will get\nadded to the pool of images from which Snyk can recommend base image upgrades.\n\nNote, after the first image in a repository gets added, a versioning schema cannot be passed in this endpoint.\nTo update the versioning schema, the PATCH endpoint must be used.\n", + "operationId": "createCustomBaseImage", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CustomBaseImagePostRequest" + } + } + }, + "description": "The properties used in the creation of a custom base image" + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CustomBaseImageResponse" + } + } + }, + "description": "Successfully created a custom base image", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create a Custom Base Image from an existing container project", + "tags": [ + "Custom Base Images" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-08-21", + "2023-09-20", + "2024-01-04", + "2024-05-31" + ], + "x-snyk-api-resource": "custombaseimages", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + } + }, + "/custom_base_images/{custombaseimage_id}": { + "delete": { + "description": "Delete a custom base image resource. (the related container project is unaffected)", + "operationId": "deleteCustomBaseImage", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/CustomBaseImageId" + } + ], + "responses": { + "204": { + "description": "Successfully deleted the custom base image", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "401": { + "$ref": "#/components/responses/401" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete a custom base image", + "tags": [ + "Custom Base Images" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-08-21", + "2023-09-20", + "2024-01-04", + "2024-05-31" + ], + "x-snyk-api-resource": "custombaseimages", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + }, + "get": { + "description": "Get a custom base image", + "operationId": "getCustomBaseImage", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/CustomBaseImageId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CustomBaseImageResponse" + } + } + }, + "description": "Returns a custom base image", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a custom base image", + "tags": [ + "Custom Base Images" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-08-21", + "2023-09-20", + "2024-01-04", + "2024-05-31" + ], + "x-snyk-api-resource": "custombaseimages", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + }, + "patch": { + "description": "Updates a custom base image's attributes", + "operationId": "updateCustomBaseImage", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/CustomBaseImageId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CustomBaseImagePatchRequest" + } + } + }, + "description": "custom base image to be updated" + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CustomBaseImageResponse" + } + } + }, + "description": "Returns the updated custom base image", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update a custom base image", + "tags": [ + "Custom Base Images" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-08-21", + "2023-09-20", + "2024-01-04", + "2024-05-31" + ], + "x-snyk-api-resource": "custombaseimages", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + } + }, + "/groups": { + "get": { + "description": "Returns a list of groups which a user is a member of", + "operationId": "listGroups", + "parameters": [ + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/Group" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of groups is returned", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get all groups (Early Access)", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-01-31~experimental", + "2023-01-30~beta" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-01-30~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}": { + "get": { + "description": "Get a group\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Unique identifier of the group.", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "00000000-0000-0000-0000-000000000000", + "format": "uuid", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GroupResponse" + } + } + }, + "description": "Returns an instance of a Group", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get Group (Early Access)", + "tags": [ + "Group" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-01-31~experimental", + "2023-01-30~beta", + "2024-04-25~experimental" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-01-30~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/apps/installs": { + "get": { + "description": "Get a list of Snyk Apps installed for a Group\n\n#### Required permissions\n\n- `View Apps (group.app.read)`", + "operationId": "getAppInstallsForGroup", + "parameters": [ + { + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "app" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AppInstallData" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of apps installed for the specified group.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get a list of Snyk Apps installed for a Group", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + }, + "post": { + "description": "Install a Snyk App to this group, the Snyk App must use unattended authentication e.g. client credentials\n\n#### Required permissions\n\n- `Install Apps (group.app.install)`", + "operationId": "createGroupAppInstall", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "properties": { + "type": { + "enum": [ + "app_install" + ], + "example": "app_install", + "type": "string" + } + }, + "type": "object" + }, + "relationships": { + "additionalProperties": false, + "properties": { + "app": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "id": { + "$ref": "#/components/schemas/Uuid" + }, + "type": { + "enum": [ + "app" + ], + "example": "app", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "required": [ + "app" + ], + "type": "object" + } + }, + "required": [ + "data", + "relationships" + ], + "type": "object" + } + } + }, + "description": "App Install to be created" + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppInstallWithClient" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "The newly created app install.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Install a Snyk App for a Group", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/apps/installs/{install_id}": { + "delete": { + "description": "Revoke app authorization for a Snyk group with install ID\n\n#### Required permissions\n\n- `Install Apps (group.app.install)`", + "operationId": "deleteGroupAppInstallById", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/InstallId" + } + ], + "responses": { + "204": { + "description": "The Snyk App install is revoked, with no content (no errors).", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Revoke app authorization for a Snyk group with install ID", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/apps/installs/{install_id}/secrets": { + "post": { + "description": "Manage client secret for non-interactive Snyk App installations\n\n#### Required permissions\n\n- `Edit Apps (group.app.edit)`", + "operationId": "updateGroupAppInstallSecret", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/InstallId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "mode": { + "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", + "enum": [ + "replace", + "create", + "delete" + ], + "type": "string" + }, + "secret": { + "description": "Secret to delete when using `delete` mode", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + "type": { + "enum": [ + "app" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppInstallDataWithSecret" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Secret has been updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Manage client secret for non-interactive Snyk App installations", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/assets/repository/aliases": { + "delete": { + "description": "Detach one or more aliased URLs from their canonical repository assets within a group. Each removed URL gets a new standalone asset document.\n\n#### Required permissions\n\n- `Edit Group Details (group.edit)`", + "operationId": "deleteAliasesInGroup", + "parameters": [ + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/RemoveRepositoryAliasRequestData" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Aliases removed successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Bulk remove aliases from repository assets in group (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "refs", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + }, + "get": { + "description": "Returns a paginated list of alias URL entries for repository assets within a group. Use the optional url filter to restrict results to a specific canonical document.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listRepositoryAliasesInGroup", + "parameters": [ + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RepositoryUrlQuery" + }, + { + "description": "Maximum number of alias items to return per page. A single canonical document with multiple aliases may span more than one page.", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/StartingAfterCursor" + }, + { + "$ref": "#/components/parameters/EndingBeforeCursor" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ListRepositoryAliasesResponse" + } + } + }, + "description": "Paginated list of repository alias entries", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List repository aliases in group (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "refs", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + }, + "post": { + "description": "Link one or more alternate repository URLs to a canonical repository asset within a group, enabling alias-aware asset lookup.\n\n#### Required permissions\n\n- `Edit Group Details (group.edit)`", + "operationId": "createAliasInGroup", + "parameters": [ + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AddRepositoryAliasRequestData" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Aliases created successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Add alias for a repository asset in group (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "refs", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/assets/search": { + "post": { + "description": "List Assets with filters\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listAssets", + "parameters": [ + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/json": { + "examples": { + "example1": { + "summary": "One filter, one attribute", + "value": { + "query": { + "attributes": { + "attribute": "type", + "operator": "equal", + "values": [ + "repository" + ] + } + } + } + }, + "example2": { + "summary": "Two filters", + "value": { + "query": { + "attributes": { + "operator": "and", + "values": [ + { + "attribute": "type", + "operator": "equal", + "values": [ + "repository" + ] + }, + { + "attribute": "sources", + "operator": "equal", + "values": [ + "snyk", + "github" + ] + } + ] + } + } + } + }, + "example3": { + "summary": "Nested filters - X and (Y or Z)", + "value": { + "query": { + "attributes": { + "operator": "and", + "values": [ + { + "attribute": "type", + "operator": "equal", + "values": [ + "repository" + ] + }, + { + "operator": "or", + "values": [ + { + "attribute": "class", + "operator": "in", + "values": [ + "A", + "B" + ] + }, + { + "attribute": "risk_factors", + "operator": "in", + "values": [ + "Deployed" + ] + } + ] + } + ] + } + } + } + }, + "example4": { + "summary": "Tags filtering", + "value": { + "query": { + "attributes": { + "operator": "and", + "values": [ + { + "attribute": "type", + "operator": "equal", + "values": [ + "repository" + ] + }, + { + "attribute": "tags.environment", + "operator": "equal", + "values": [ + "production" + ] + }, + { + "attribute": "tags.team", + "operator": "equal", + "values": [ + "backend" + ] + } ] } } - } - }, - "example2": { - "summary": "Two filters", - "value": { - "query": { - "attributes": { - "operator": "and", - "values": [ - { - "attribute": "type", - "operator": "equal", - "values": [ - "repository" - ] + } + } + }, + "schema": { + "oneOf": [ + { + "additionalProperties": false, + "description": "Empty body", + "type": "object" + }, + { + "$ref": "#/components/schemas/SearchObject" + } + ] + } + } + }, + "description": "Filter criteria for listing assets. Can be empty or contain query filters." + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AssetResponseData" + }, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "type": "object" + } + } + }, + "description": "Assets found", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List Assets with filters (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta", + "2025-09-28~beta" + ], + "x-snyk-api-resource": "assets", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/assets/{asset_id}": { + "get": { + "description": "Get an Asset by its ID\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getAsset", + "parameters": [ + { + "$ref": "#/components/parameters/AssetId" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssetResponseData" + }, + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Asset found", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get an Asset by its ID (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta", + "2025-09-28~beta" + ], + "x-snyk-api-resource": "assets", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "The endpoint allows for partial updates to an asset's attributes.\n\n#### Required permissions\n\n- `Edit Group Details (group.edit)`", + "operationId": "updateAsset", + "parameters": [ + { + "$ref": "#/components/parameters/AssetId" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/UpdateAssetRequestData" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AssetResponseData" + }, + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Asset updated successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update asset attributes (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "assets", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/assets/{asset_id}/relationships/assets": { + "get": { + "description": "List related assets with pagination\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listRelatedAssets", + "parameters": [ + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/AssetId" + }, + { + "$ref": "#/components/parameters/StartingAfterCursor__0" + }, + { + "$ref": "#/components/parameters/EndingBeforeCursor__0" + }, + { + "$ref": "#/components/parameters/Limit__0" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/AssetTypeFilter" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AssetResponseData" + }, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "type": "object" + } + } + }, + "description": "Related assets found", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List related assets with pagination (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta", + "2025-09-28~beta" + ], + "x-snyk-api-resource": "assets", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/assets/{asset_id}/relationships/projects": { + "get": { + "description": "List asset projects with pagination\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listAssetProjects", + "parameters": [ + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/AssetId" + }, + { + "$ref": "#/components/parameters/StartingAfterCursor__0" + }, + { + "$ref": "#/components/parameters/EndingBeforeCursor__0" + }, + { + "$ref": "#/components/parameters/Limit__0" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AssetProjectResponseData" + }, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "type": "object" + } + } + }, + "description": "Assets found", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List asset projects with pagination (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta", + "2025-09-28~beta" + ], + "x-snyk-api-resource": "assets", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/audit_logs/search": { + "get": { + "description": "Search audit logs for a Group. \"api.access\" events are omitted from results unless explicitly requested using the events parameter. Some Organization level events are supported as well as the following\nGroup level events:\n - api.access\n - group.cloud_config.settings.edit\n - group.create\n - group.delete\n - group.edit\n - group.notification_settings.edit\n - group.org.add\n - group.org.remove\n - group.policy.create\n - group.policy.delete\n - group.policy.edit\n - group.request_access_settings.edit\n - group.role.create\n - group.role.delete\n - group.role.edit\n - group.service_account.create\n - group.service_account.delete\n - group.service_account.edit\n - group.settings.edit\n - group.settings.feature_flag.edit\n - group.sso.add\n - group.sso.auth0_connection.create\n - group.sso.auth0_connection.edit\n - group.sso.create\n - group.sso.delete\n - group.sso.edit\n - group.sso.membership.sync\n - group.sso.remove\n - group.tag.create\n - group.tag.delete\n - group.user.add\n - group.user.remove\n - group.user.role.edit\n\n#### Required permissions\n\n- `View Audit Logs (group.audit.read)`", + "operationId": "listGroupAuditLogs", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/GroupId" + }, + { + "$ref": "#/components/parameters/Cursor" + }, + { + "$ref": "#/components/parameters/From" + }, + { + "$ref": "#/components/parameters/To" + }, + { + "$ref": "#/components/parameters/Size" + }, + { + "$ref": "#/components/parameters/SortOrder" + }, + { + "$ref": "#/components/parameters/UserId" + }, + { + "$ref": "#/components/parameters/ProjectId" + }, + { + "$ref": "#/components/parameters/Events" + }, + { + "$ref": "#/components/parameters/ExcludeEvents" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AuditLogSearch" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "Group Audit Logs.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Search Group audit logs.", + "tags": [ + "Audit Logs" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-11", + "2024-04-29" + ], + "x-snyk-api-resource": "audit-logs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-04-29", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/export": { + "post": { + "description": "Create and start an export for a group\n\n#### Required permissions\n\n- `View reports (group.report.read)`", + "operationId": "createGroupExport", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "$ref": "#/components/parameters/include_deleted" + }, + { + "$ref": "#/components/parameters/include_deactivated" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateGroupExport" + }, + "responses": { + "202": { + "$ref": "#/components/responses/CreateExport" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "429": { + "$ref": "#/components/responses/TooManyRequests" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "security": [ + { + "TokenAuth": [] + } + ], + "summary": "Start an export", + "tags": [ + "Export" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "export", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/export/{export_id}": { + "get": { + "description": "Get an export results\n\n#### Required permissions\n\n- `View reports (group.report.read)`", + "operationId": "getGroupExport", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "$ref": "#/components/parameters/exportId" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetExport" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "security": [ + { + "TokenAuth": [] + } + ], + "summary": "Get export results", + "tags": [ + "Export" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "export", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/inventory/assets": { + "get": { + "description": "Retrieves a polymorphic list of all asset types for a given group.\nThe tenant is resolved from the group_id.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listAssetsGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RsqlFilter" + }, + { + "description": "Comma-separated sort fields. Prefix with `-` for descending order.", + "example": "-created_at", + "in": "query", + "name": "sort", + "schema": { + "type": "string" + } + }, + { + "description": "Number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + }, + { + "$ref": "#/components/parameters/MetaCount" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetListResponse" + } + } + }, + "description": "Successful response with a polymorphic list of assets", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List or search all assets (synchronous) - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Partially updates multiple assets within a group context.\nMaximum of 100 assets can be updated per request.\nThe operation is transactional - all updates succeed or all fail.\n\n#### Required permissions\n\n- `Edit Group Details (group.edit)`", + "operationId": "updateAssetsBulkGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetBulkPatchRequestBody" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Assets updated successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Bulk update asset attributes - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/filters": { + "get": { + "description": "Returns a list of valid field names that can be used for filtering assets using RSQL.\nEach field includes its name, data type, and which asset types it applies to.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getFilterFieldsGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter the available filter fields", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/FilterFieldsResponse" + } + } + }, + "description": "List of available filter fields", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get available filter fields - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/filters/{filter_id}/values": { + "get": { + "description": "Returns a list of distinct values for a specific filter field.\nUseful for building autocomplete functionality in filter UIs.\n\nUse the UUID from the filter fields list endpoint to identify which field to query.\n\nFor object filter values, both the keys and values are returned.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getFilterValuesGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "The UUID of the filter field to get values for (from the filter fields list endpoint)", + "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "in": "path", + "name": "filter_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Full text search term to filter the list of values. If keys_only is true, this will filter the keys of the object filter values. If key is provided, this will filter the value for the specific key of the object filter values.", + "example": "prod", + "in": "query", + "name": "q", + "schema": { + "maxLength": 100, + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Return only the keys of the object filter values", + "in": "query", + "name": "keys_only", + "schema": { + "type": "boolean" + } + }, + { + "description": "Return only the value for a specific key of the object filter values", + "in": "query", + "name": "key", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/FilterValuesResponse" + } + } + }, + "description": "List of filter values", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get filter value suggestions (autocomplete) - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/groups": { + "get": { + "description": "Returns a list of valid group field names that can be used for grouping assets within a group context.\nCommon fields such as `class` and `org_id` (the Snyk organization that discovered the asset) apply to\nevery asset type; grouping by `org_id` returns one bucket per organization in the group.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getGroupFieldsGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter group fields", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for forward pagination", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for backward pagination", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GroupFieldsResponse" + } + } + }, + "description": "List of available group fields", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get available group fields - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/groups/{group_field_id}/values": { + "get": { + "description": "Returns aggregated values for a specific group field id, showing the count of assets\nfor each distinct value.\n\nUse the UUID from the group fields list endpoint to identify which field to query.\n\nGrouping by `org_id` buckets assets by the Snyk organization that discovered them:\none bucket per organization at group or tenant scope, and a single bucket at org scope.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getGroupValuesGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "The UUID of the group field to get values for (from the group fields list endpoint)", + "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "in": "path", + "name": "group_field_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter the aggregation", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RsqlFilterGroupValues" + }, + { + "$ref": "#/components/parameters/SortGroupValues" + }, + { + "description": "Maximum number of group values to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for forward pagination", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for backward pagination", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/MetaFieldsGroupValues" + }, + { + "$ref": "#/components/parameters/AggregateGroupValues" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GroupValuesResponse" + } + } + }, + "description": "List of group values with aggregated metadata", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get group value aggregation - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/searches": { + "post": { + "description": "Initiates an asynchronous search for assets within a group context.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "createAssetSearchGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateSearchRequestBody" + } + } + } + }, + "responses": { + "302": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "jsonapi": { + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + } + } + }, + "description": "Found - Redirects to search results endpoint", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "description": "URL to retrieve search results", + "schema": { + "format": "uri", + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create an asset search (asynchronous) - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/searches/{search_id}/results": { + "get": { + "description": "Gets paginated results for a previously initiated asset search within a group context.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getAssetSearchResultsGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SearchId" + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Sort order for results (e.g., -created_at for descending)", + "in": "query", + "name": "sort", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for forward pagination", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for backward pagination", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetListResponse" + } + } + }, + "description": "Search results retrieved successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Retrieve asset search results (asynchronous) - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/{asset_id}": { + "get": { + "description": "Retrieves a single asset by its unique identifier within a group context.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getAssetGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/PolymorphicAssetData" + }, + "links": { + "properties": { + "self": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Asset retrieved successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a single asset by ID - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Partially updates an asset's attributes within a group context.\nSupports updating class, labels (add/remove), and tags (add/remove).\n\n#### Required permissions\n\n- `Edit Group Details (group.edit)`", + "operationId": "updateAssetGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetPatchRequestBody" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/PolymorphicAssetData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApiVersion" + }, + "links": { + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Asset updated successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update asset attributes - Group scope (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/{asset_id}/relationships/projects": { + "get": { + "description": "Retrieves a paginated list of Snyk projects linked to this asset with full attributes.\nReturns the `id`, `type`, and `attributes` of each related project.\nScoped to the specified group.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listAssetProjectsGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Filter projects by canonical status.\n- `with`: Returns all projects (canonical attribute is populated).\n- `only`: Returns only canonical projects (those used for vulnerability counts).\n- `none`: Returns only non-canonical projects.\nWhen omitted, returns all projects without canonical filtering.\n", + "in": "query", + "name": "canonical", + "schema": { + "enum": [ + "with", + "only", + "none" + ], + "type": "string" + } + }, + { + "description": "Filter projects by target ID. When provided, returns only projects that belong to\nthe specified target. When omitted, returns projects from all targets.\n", + "in": "query", + "name": "target_id", + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/ProjectSortParam" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ProjectRelationshipListResponse" + } + } + }, + "description": "Successfully retrieved linked projects", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List projects for an asset (group scope) (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "project", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/inventory/assets/{asset_id}/relationships/targets": { + "get": { + "description": "Retrieves a paginated list of Snyk targets linked to this asset with full attributes.\nReturns the `id`, `type`, and `attributes` of each related target.\nScoped to the specified group.\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "listAssetTargetsGroup", + "parameters": [ + { + "description": "The unique identifier of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/TargetRelationshipListResponse" + } + } + }, + "description": "Successfully retrieved linked targets", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List targets for an asset (group scope) (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "target", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/issues": { + "get": { + "description": "Get a list of a group's issues.\n\n#### Required permissions\n\n- `View Issues (group.issues.read)`", + "operationId": "listGroupIssues", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "4a18d42f-0706-4ad0-b127-24078731fbed", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/ScanItemId" + }, + { + "$ref": "#/components/parameters/ScanItemType" + }, + { + "$ref": "#/components/parameters/Type" + }, + { + "description": "A filter to select issues updated before this date.", + "in": "query", + "name": "updated_before", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "A filter to select issues updated after this date.", + "in": "query", + "name": "updated_after", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "A filter to select issues created before this date.", + "in": "query", + "name": "created_before", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "A filter to select issues created after this date.", + "in": "query", + "name": "created_after", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EffectiveSeverityLevel" + }, + { + "$ref": "#/components/parameters/Status" + }, + { + "$ref": "#/components/parameters/Ignored" + }, + { + "$ref": "#/components/parameters/IncludeCodeFlows" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListIssues200" + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get issues by group ID", + "tags": [ + "Issues" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-03-10~experimental", + "2023-09-29~beta", + "2024-01-23" + ], + "x-snyk-api-resource": "issues", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-01-23", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/issues/{issue_id}": { + "get": { + "description": "Get an issue\n\n#### Required permissions\n\n- `View Issues (group.issues.read)`", + "operationId": "getGroupIssueByIssueID", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "4a18d42f-0706-4ad0-b127-24078731fbed", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathIssueId20240123" + }, + { + "$ref": "#/components/parameters/IncludeCodeFlows" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetIssue20020240123" + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "501": { + "$ref": "#/components/responses/501" + } + }, + "summary": "Get an issue", + "tags": [ + "Issues" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-01-23" + ], + "x-snyk-api-resource": "issues", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-01-23", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/jobs/export/{export_id}": { + "get": { + "description": "Get an export job status\n\n#### Required permissions\n\n- `View reports (group.report.read)`", + "operationId": "getGroupExportJobStatus", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "$ref": "#/components/parameters/exportId" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetExportJob" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "security": [ + { + "TokenAuth": [] + } + ], + "summary": "Get export status", + "tags": [ + "Export" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "export", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/memberships": { + "get": { + "description": "Returns all memberships of the group\n\n#### Required permissions\n\n- `View Group Memberships (group.membership.read)`", + "operationId": "listGroupMemberships", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/SortBy__0" + }, + { + "$ref": "#/components/parameters/SortOrder__0" + }, + { + "$ref": "#/components/parameters/EmailFilter" + }, + { + "$ref": "#/components/parameters/UserIdFilter" + }, + { + "$ref": "#/components/parameters/UsernameFilter" + }, + { + "$ref": "#/components/parameters/RoleFilter" + }, + { + "$ref": "#/components/parameters/IncludeGroupMembershipCount" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/GroupMembershipResponseData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "List of group memberships is returned", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get all memberships of the group", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-05-09~experimental", + "2024-08-25" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-08-25", + "x-stability-level": "stable" + }, + "post": { + "description": "Create a group membership for a user with role\n\n#### Required permissions\n\n- `Add Group Memberships (group.membership.add)`", + "operationId": "createGroupMembership", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateGroupMembershipRequestBody" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/GroupMembership" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "type": "object" + } + } + }, + "description": "Membership for the group was created", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create a group membership for a user with role", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-05-09~experimental", + "2024-08-25" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-08-25", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/memberships/{membership_id}": { + "delete": { + "description": "Deletes a membership from a group\n\n#### Required permissions\n\n- `Delete Group Memberships (group.membership.delete)`", + "operationId": "deleteGroupMembership", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the Group Membership", + "in": "path", + "name": "membership_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Cascade" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "204": { + "description": "group membership is deleted from Group", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete a membership from a group", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-05-09~experimental", + "2024-08-25" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-08-25", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update a role from a group membership\n\n#### Required permissions\n\n- `Edit Group Memberships (group.membership.edit)`", + "operationId": "updateGroupUserMembership", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the Group Membership", + "in": "path", + "name": "membership_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/MembershipPatchRequestBody" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "204": { + "$ref": "#/components/responses/204" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update a role from a group membership", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-05-09~experimental", + "2024-08-25" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-08-25", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/org_memberships": { + "get": { + "description": "Get list of org memberships of a group user\n\n#### Required permissions\n\n- `View Group Memberships (group.membership.read)`\n\n- `View Organizations (group.org.list)`", + "operationId": "listGroupUserOrgMemberships", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the User", + "in": "query", + "name": "user_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/OrgName" + }, + { + "$ref": "#/components/parameters/RoleFilter" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/GroupMembershipOrgMembership" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + }, + "meta": { + "properties": { + "org_membership_count": { + "description": "Org memberships for this user within this group.", + "type": "number" + } + }, + "type": "object" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of org memberships is returned", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get list of org memberships of a group user", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-08-25" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-08-25", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/orgs": { + "get": { + "description": "Get a paginated list of all the organizations belonging to the group.\nBy default, this endpoint returns the organizations in alphabetical order of their name.\n\n#### Required permissions\n\n- `View Groups (group.read)`\n\n- `View Organizations (group.org.list)`", + "operationId": "listOrgsInGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/PathGroupId" + }, + { + "$ref": "#/components/parameters/QueryNameFilter" + }, + { + "$ref": "#/components/parameters/QuerySlugFilter" + }, + { + "$ref": "#/components/parameters/QueryExpand" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/Org" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + }, + "meta": { + "$ref": "#/components/schemas/ListOrgsInGroupMeta" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of organizations in the group.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List all organizations in group", + "tags": [ + "Orgs" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-10-24~experimental", + "2023-12-14~beta", + "2024-02-28" + ], + "x-snyk-api-resource": "orgs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-02-28", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/policies": { + "get": { + "description": "Get all policies for the requested group\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `View Policies (group.policy.read)`", + "operationId": "listGroupPolicies", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/GroupPolicyResponse" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "The group policies for the requested group", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + } + }, + "summary": "Get group level policies (Early Access)", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "grouppolicies", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "post": { + "description": "Create one new group level policy.\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `Create Policies (group.policy.create)`", + "operationId": "createGroupPolicy", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateGroupPolicyPayload" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/GroupPolicyResponse" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "A single policy is returned if it is successfully created.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create a new group level policy (Early Access)", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "grouppolicies", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/policies/{policy_id}": { + "delete": { + "description": "Delete an existing group-level policy.\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `Delete Policies (group.policy.delete)`", + "operationId": "deleteGroupPolicy", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PolicyId" + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/204" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete an group-level policy (Early Access)", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "grouppolicies", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Update the group-level policy.\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `Edit Policies (group.policy.edit)`", + "operationId": "updateGroupPolicy", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PolicyId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateGroupPolicyPayload" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/GroupPolicyResponse" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "A single group policy is returned if it is successfully updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + } + }, + "summary": "Update a group-level policy (Early Access)", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "grouppolicies", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/rule_extensions/assignments": { + "delete": { + "description": "Delete assignments for rule extensions with Group or Organization scope.\n\n#### Required permissions\n\n- `group.rule_extension.edit`", + "operationId": "deleteAssignments", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/QueryIds" + }, + { + "$ref": "#/components/parameters/QueryRuleExtensionId" + } + ], + "responses": { + "204": { + "description": "Assignments successfully deleted.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Delete assignments for rule extensions", + "tags": [ + "Assignments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "get": { + "description": "Returns a paginated list of all rule extension assignments for the requested group.\n\n**Pagination:** The `starting_after` and `ending_before` query parameters are mutually exclusive. Providing both will result in a 400 Bad Request response.\n\n**Filtering:** The `org_id` and `group_id` query parameters are mutually exclusive. Providing both will result in a 400 Bad Request response.\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "listAssignments", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/QueryRuleExtensionIds" + }, + { + "$ref": "#/components/parameters/QueryOrgId" + }, + { + "$ref": "#/components/parameters/QueryGroupId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "examples": { + "listAssignments": { + "$ref": "#/components/examples/ListAssignmentsResponse" + } + }, + "schema": { + "$ref": "#/components/schemas/AssignmentsResponseBody" + } + } + }, + "description": "Returns a paginated list of assignments for the requested group.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "List all assignments for a group", + "tags": [ + "Assignments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "post": { + "description": "Assign published rule extensions with Group or Organization scope.\n\n#### Required permissions\n\n- `group.rule_extension.edit`", + "operationId": "createAssignments", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "examples": { + "createAssignments": { + "$ref": "#/components/examples/CreateAssignmentsRequest" + } + }, + "schema": { + "$ref": "#/components/schemas/AssignmentsRequest" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Assignments for rule extension successfully created.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Create bulk assignments for rule extensions", + "tags": [ + "Assignments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/sast/rule_extensions": { + "get": { + "description": "Get a list of all the SAST rule extensions for the requested Group ID and its child Org(s).\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "listSastRuleExtensionsByGroup", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SastRuleExtensionsResponseBody" + } + } + }, + "description": "Returns a list of all the SAST rule extensions associated with the requested Group ID and its child Org(s)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get a list of all the SAST rule extensions for the requested Group", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "post": { + "description": "SAST rule extensions adapt Snyk SAST analysis, making Snyk Code Rules more suitable for your code. You must associate SAST rule extensions with particular Snyk Code Rule Keys. Only published SAST rule extensions with assignment would be applied to Snyk SAST scans.\n\n#### Required permissions\n\n- `group.rule_extension.create`", + "operationId": "createSastRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "examples": { + "copySastRuleExtension": { + "$ref": "#/components/examples/CopyRuleExtensionRequest" + }, + "createDraftSastRuleExtension": { + "$ref": "#/components/examples/CreateSastRuleExtensionRequestDraft" + }, + "createPublishedSastRuleExtension": { + "$ref": "#/components/examples/CreateSastRuleExtensionRequestPublished" + } + }, + "schema": { + "$ref": "#/components/schemas/SastRuleExtensionRequest" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "examples": { + "createDraftSastRuleExtension": { + "$ref": "#/components/examples/SastRuleExtensionResponseDraft" + } + }, + "schema": { + "$ref": "#/components/schemas/SastRuleExtensionResponseBody" + } + } + }, + "description": "SAST rule extension successfully created. SAST rule extensions will only apply once published and assigned.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Create a SAST rule extension", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/sast/rule_extensions/tests": { + "post": { + "description": "Create a test on a Snyk Code project to understand the impact of the input SAST Rule Extension.\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "createSastImpactTest", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SastTestRequestBody" + } + } + }, + "required": true + }, + "responses": { + "202": { + "content": { + "application/vnd.api+json": { + "examples": { + "testResponseBodyStarted": { + "$ref": "#/components/examples/SastTestResponseBodyStarted" + } + }, + "schema": { + "$ref": "#/components/schemas/SastTestResponseBody" + } + } + }, + "description": "The operation was accepted but a result is not available at this time", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Trigger a SAST rule extension impact test.", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/sast/rule_extensions/tests/{test_id}": { + "get": { + "description": "Get the SAST rule extension test status for a requested Snyk Code project.\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "getSastImpactTestStatus", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathTestId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "examples": { + "testResponseBodyErrored": { + "$ref": "#/components/examples/SastTestResponseBodyErrored" + }, + "testResponseBodyStarted": { + "$ref": "#/components/examples/SastTestResponseBodyStarted" + } + }, + "schema": { + "$ref": "#/components/schemas/SastTestResponseBody" + } + } + }, + "description": "Returns the status and url to poll for the test result with a retry-after header to indicate polling cadence.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "retry-after": { + "$ref": "#/components/headers/RetryAfterHeader" + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "303": { + "$ref": "#/components/responses/303" + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Retrieve the SAST rule extension impact test status.", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/sast/rule_extensions/tests/{test_id}/results": { + "get": { + "description": "Get the test result of a Snyk Code project to understand the impact of the input SAST Rule Extension.\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "getSastImpactTestResult", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathTestId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "examples": { + "testResultsFindingsAddedResponse": { + "$ref": "#/components/examples/SastTestResultsResponseBodyWithFindingsAdded" + }, + "testResultsFindingsRemovedAndAddedResponse": { + "$ref": "#/components/examples/SastTestResultsResponseBodyWithFindingsRemovedAndAdded" + }, + "testResultsFindingsRemovedResponse": { + "$ref": "#/components/examples/SastTestResultsResponseBodyWithFindingsRemoved" + }, + "testResultsNoChangesResponse": { + "$ref": "#/components/examples/SastTestResultsResponseBodyWithNoChanges" + } + }, + "schema": { + "$ref": "#/components/schemas/SastTestResultsResponseBody" + } + } + }, + "description": "Returns the test results of the input SAST rule extension against a Snyk Code project.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Retrieve the impact test result for a SAST rule extension.", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/sast/rule_extensions/{rule_extension_id}": { + "delete": { + "description": "Delete the SAST rule extension for the requested SAST rule extension ID. Draft rule extensions can be deleted unconditionally. Published rule extensions can only be deleted if they have no assignments. All assignments must be removed before a published rule extension can be deleted.\n\n#### Required permissions\n\n- `group.rule_extension.delete`", + "operationId": "deleteSastRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathSastRuleExtensionId" + } + ], + "responses": { + "204": { + "description": "SAST rule extension deleted successfully.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Delete a SAST rule extension by SAST rule extension ID", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "get": { + "description": "Get the SAST rule extension for the requested SAST rule extension ID\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "getSastRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathSastRuleExtensionId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "examples": { + "sastRuleExtensionResponse": { + "$ref": "#/components/examples/SastRuleExtensionResponse" + } + }, + "schema": { + "$ref": "#/components/schemas/SastRuleExtensionResponseBody" + } + } + }, + "description": "SAST rule extension retrieved successfully.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get a SAST rule extension by SAST rule extension ID", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update the SAST rule extension for the requested SAST rule extension ID\n\n#### Required permissions\n\n- `group.rule_extension.edit`", + "operationId": "updateSastRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathSastRuleExtensionId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "examples": { + "publishSastRuleExtension": { + "$ref": "#/components/examples/PublishSastRuleExtensionRequest" + }, + "updateSastRuleExtensionDraft": { + "$ref": "#/components/examples/UpdateSastRuleExtensionRequestDraft" + } + }, + "schema": { + "$ref": "#/components/schemas/UpdateSastRuleExtensionRequestBody" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "examples": { + "sastRuleExtensionResponse": { + "$ref": "#/components/examples/SastRuleExtensionResponse" + } + }, + "schema": { + "$ref": "#/components/schemas/SastRuleExtensionResponseBody" + } + } + }, + "description": "SAST rule extension updated successfully.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Update a SAST rule extension by SAST rule extension ID", + "tags": [ + "SastRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/secrets/rule_extensions": { + "get": { + "description": "Get a list of all secrets rule extensions for the requested Group ID and its child Org(s).\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "listSecretsRuleExtensions", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SecretsRuleExtensionsResponseBody" + } + } + }, + "description": "Returns a list of all secrets rule extensions for the requested Group ID.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get a list of all secrets rule extensions for the requested Group", + "tags": [ + "SecretsRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "post": { + "description": "Secrets rule extensions adapt Snyk Secret analysis, making Snyk Secret Rules more suitable for your code. Only published secrets rule extensions with assignment would be applied to Snyk scans.\n\n#### Required permissions\n\n- `group.rule_extension.create`", + "operationId": "createSecretsRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "examples": { + "copySecretsRegexRuleExtension": { + "$ref": "#/components/examples/CopyRuleExtensionRequest" + }, + "createDraftSecretsRegexRuleExtension": { + "$ref": "#/components/examples/CreateSecretsRegexRuleExtensionRequestDraft" + }, + "createPublishedSecretsRegexRuleExtension": { + "$ref": "#/components/examples/CreateSecretsRegexRuleExtensionRequestPublished" + } + }, + "schema": { + "$ref": "#/components/schemas/SecretsRuleExtensionRequest" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SecretsRuleExtensionResponseBody" + } + } + }, + "description": "Secrets rule extension successfully created. Secrets rule extensions will only apply once published and assigned.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Create a secrets rule extension", + "tags": [ + "SecretsRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}": { + "delete": { + "description": "Delete the secrets rule extension for the requested rule extension ID. Draft rule extensions can be deleted unconditionally. Published rule extensions can only be deleted if they have no assignments.\n\n#### Required permissions\n\n- `group.rule_extension.delete`", + "operationId": "deleteSecretsRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathRuleExtensionId" + } + ], + "responses": { + "204": { + "description": "Secrets rule extension deleted successfully.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Delete a secrets rule extension by rule extension ID", + "tags": [ + "SecretsRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "get": { + "description": "Get the secrets rule extension for the requested rule extension ID.\n\n#### Required permissions\n\n- `group.rule_extension.read`", + "operationId": "getSecretsRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathRuleExtensionId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SecretsRuleExtensionResponseBody" + } + } + }, + "description": "Secrets rule extension retrieved successfully.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get a secrets rule extension by rule extension ID", + "tags": [ + "SecretsRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update the secrets rule extension for the requested rule extension ID.\n\n#### Required permissions\n\n- `group.rule_extension.edit`", + "operationId": "updateSecretsRuleExtension", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "description": "Unique identifier for group in request path", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PathRuleExtensionId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "examples": { + "publishSecretsRegexRuleExtension": { + "$ref": "#/components/examples/PublishSecretsRegexRuleExtensionRequest" + }, + "updateSecretsRegexRuleExtensionDraft": { + "$ref": "#/components/examples/UpdateSecretsRegexRuleExtensionRequestDraft" + } + }, + "schema": { + "$ref": "#/components/schemas/UpdateSecretsRuleExtensionRequestBody" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SecretsRuleExtensionResponseBody" + } + } + }, + "description": "Secrets rule extension updated successfully.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "403": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "409": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Update a secrets rule extension by rule extension ID", + "tags": [ + "SecretsRuleExtensions" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "rule_extensions", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/service_accounts": { + "get": { + "description": "Get all service accounts for a group.\n\n#### Required permissions\n\n- `View service accounts (group.service_account.read)`", + "operationId": "getManyGroupServiceAccount", + "parameters": [ + { + "description": "The ID of the Snyk Group that owns the service accounts.", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + }, + "meta": { + "properties": { + "access_tokens": { + "properties": { + "max_active_tokens": { + "type": "integer" + }, + "max_expiry_days": { + "type": "integer" + } + }, + "required": [ + "max_active_tokens", + "max_expiry_days" + ], + "type": "object" + } + }, + "type": "object" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of service accounts is returned.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a list of group service accounts.", + "tags": [ + "ServiceAccounts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-07" + ], + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + }, + "post": { + "description": "Create a service account for a group. The service account can be used to access the Snyk API.\n\n#### Required permissions\n\n- `Create service accounts (group.service_account.create)`", + "operationId": "createGroupServiceAccount", + "parameters": [ + { + "description": "The ID of the Snyk Group that is creating and owns the service account", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "access_token_expires_at": { + "description": "The expiry date of the access token. Required only when auth_type is access_token.", + "example": "2025-08-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "access_token_ttl_seconds": { + "description": "The time, in seconds, that a generated oauth access token will be valid for. Defaults to 1 hour if unset. Only used when auth_type is one of the oauth_* variants.", + "maximum": 86400, + "minimum": 3600, + "type": "number" + }, + "auth_type": { + "description": "The authentication strategy for the service account:\n * api_key - Regular Snyk API Key.\n * oauth_client_secret - OAuth2 client_credentials grant, which returns a client secret that can be used to retrieve an oauth access token.\n * oauth_private_key_jwt - OAuth2 client_credentials grant, using private_key_jwt client_assertion as laid out in OIDC Connect Core 1.0, section 9.\n * access_token - Access tokens are long-lived, can be used more than once for increased flexibility, and have expiries for enhanced security.", + "enum": [ + "api_key", + "oauth_client_secret", + "oauth_private_key_jwt", + "access_token" + ], + "type": "string" + }, + "jwks_url": { + "description": "A JWKs URL hosting your public keys, used to verify signed JWT requests. Must be https. Required only when auth_type is oauth_private_key_jwt.", + "type": "string" + }, + "name": { + "description": "A human-friendly name for the service account.", + "type": "string" + }, + "role_id": { + "description": "The ID of the role which the created service account should use. Obtained in the Snyk UI, via \"Group Page\" -\u003e \"Settings\" -\u003e \"Member Roles\" -\u003e \"Create new Role\". Can be shared among multiple accounts.", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "name", + "role_id", + "auth_type" + ], + "type": "object" + }, + "type": { + "description": "The Resource type.", + "enum": [ + "service_account" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "A new service account has been created", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create a service account for a group.", + "tags": [ + "ServiceAccounts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-07" + ], + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/service_accounts/{serviceaccount_id}": { + "delete": { + "description": "Permanently delete a group-level service account by its ID.\n\n#### Required permissions\n\n- `Delete service accounts (group.service_account.delete)`", + "operationId": "deleteOneGroupServiceAccount", + "parameters": [ + { + "description": "The ID of the Snyk Group that owns the service account.", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the service account.", + "in": "path", + "name": "serviceaccount_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "204": { + "description": "Service account was successfully deleted.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete a group service account.", + "tags": [ + "ServiceAccounts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-07" + ], + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + }, + "get": { + "description": "Get a group-level service account by its ID.\n\n#### Required permissions\n\n- `View service accounts (group.service_account.read)`", + "operationId": "getOneGroupServiceAccount", + "parameters": [ + { + "description": "The ID of the Snyk Group that owns the service account.", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the service account.", + "in": "path", + "name": "serviceaccount_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "Service account is returned.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a group service account.", + "tags": [ + "ServiceAccounts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-07" + ], + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update the name of a group's service account by its ID.\n\n#### Required permissions\n\n- `Edit service accounts (group.service_account.edit)`", + "operationId": "updateGroupServiceAccount", + "parameters": [ + { + "description": "The ID of the Snyk Group that owns the service account.", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the service account.", + "in": "path", + "name": "serviceaccount_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "name": { + "description": "A human-friendly name for the service account. Must be unique within the group.", + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "id": { + "description": "The ID of the service account. Must match the id in the url path.", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The Resource type.", + "enum": [ + "service_account" + ], + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "Service account is returned.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update a group service account.", + "tags": [ + "ServiceAccounts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-07" + ], + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/service_accounts/{serviceaccount_id}/secrets": { + "post": { + "description": "Manage the client secret of a group service account by the service account ID.\n\n#### Required permissions\n\n- `Edit service accounts (group.service_account.edit)`", + "operationId": "updateServiceAccountSecret", + "parameters": [ + { + "description": "The ID of the Snyk Group that owns the service account.", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the service account.", + "in": "path", + "name": "serviceaccount_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "mode": { + "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated secret.\n * `create` - Add a new secret, preserving existing secrets. A maximum of to two secrets can exist at a time.\n * `delete` - Remove an existing secret by value. At least one secret must remain per service account.\n", + "enum": [ + "replace", + "create", + "delete" + ], + "type": "string" + }, + "secret": { + "description": "Secret to delete when using `delete` mode", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + "type": { + "description": "The Resource type.", + "enum": [ + "service_account" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "Service account client secret has been updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Manage a group service account's client secret.", + "tags": [ + "ServiceAccounts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-07" + ], + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/settings/iac": { + "get": { + "description": "Get the Infrastructure as Code Settings for a group.\n\n#### Required permissions\n\n- `View IaC settings (group.iac.settings.read)`", + "operationId": "getIacSettingsForGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "The id of the group whose Infrastructure as Code settings are requested", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/GroupIacSettingsResponse" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "The Infrastructure as Code Settings of the group.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get the Infrastructure as Code Settings for a group", + "tags": [ + "IacSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2021-12-09" + ], + "x-snyk-api-resource": "iac_settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2021-12-09", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update the Infrastructure as Code Settings for a group.\n\n#### Required permissions\n\n- `Edit IaC settings (group.iac.settings.edit)`", + "operationId": "updateIacSettingsForGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "The id of the group whose Infrastructure as Code settings are getting updated", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/GroupIacSettingsRequest" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/GroupIacSettingsResponse" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "The Infrastructure as Code Settings of the group were updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update the Infrastructure as Code Settings for a group", + "tags": [ + "IacSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2021-12-09" + ], + "x-snyk-api-resource": "iac_settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2021-12-09", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/settings/opensource/broker": { + "delete": { + "description": "Deletes the opensource broker setting for the group by uninstalling the Snyk App\n\n#### Required permissions\n\n- `Install Apps (group.app.install)`", + "operationId": "deleteOpensourceBrokerSettingForGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "Successfully deleted opensource broker setting", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete opensource broker setting for group", + "tags": [ + "OpensourceSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "opensourceSettings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "get": { + "description": "Returns whether the opensource broker setting is enabled for the group\n\n#### Required permissions\n\n- `View Groups (group.read)`", + "operationId": "getOpensourceBrokerSettingForGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "description": "opensource broker setting", + "properties": { + "enabled": { + "description": "Whether the opensource broker setting is enabled", + "example": true, + "type": "boolean" + } + }, + "required": [ + "enabled" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + } + } + } + }, + "description": "Successfully retrieved opensource broker setting", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get opensource broker setting for group", + "tags": [ + "OpensourceSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "opensourceSettings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + }, + "post": { + "description": "Enables the opensource broker setting for a group by installing the Snyk App\n\n#### Required permissions\n\n- `Install Apps (group.app.install)`", + "operationId": "enableOpensourceBrokerForGroup", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Group ID", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EmptyRequestBody" + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "description": "enable result", + "properties": { + "status": { + "enum": [ + "success" + ], + "example": "success", + "type": "string" + } + }, + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "additionalProperties": false, + "type": "object" + } + } + } + } + }, + "description": "Enabled opensource broker successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Enable opensource broker for group", + "tags": [ + "OpensourceSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "opensourceSettings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/settings/pull_request_template": { + "delete": { + "description": "Delete your groups pull request template. This means Snyk pull requests will start to use the default template for this group.\n\n#### Required permissions\n\n- `Edit Group settings (group.settings.edit)`", + "operationId": "deletePullRequestTemplate", + "parameters": [ + { + "description": "Snyk Group ID", + "example": "7626925e-4b0f-11ee-be56-0242ac120002", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/204" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete pull request template for group", + "tags": [ + "Pull Request Templates" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-10-13~beta", + "2024-05-08" + ], + "x-snyk-api-resource": "pullRequestTemplates", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-08", + "x-stability-level": "stable" + }, + "get": { + "description": "Get your groups pull request template\n\n#### Required permissions\n\n- `View Group settings (group.settings.read)`", + "operationId": "getPullRequestTemplate", + "parameters": [ + { + "description": "Snyk Group ID", + "example": "7626925e-4b0f-11ee-be56-0242ac120002", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "description": "Fetch a pull request template response", + "properties": { + "attributes": { + "$ref": "#/components/schemas/PullRequestTemplateAttributes" + }, + "id": { + "$ref": "#/components/schemas/PullRequsetTemplateId" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "type": "object" + } + } + }, + "description": "Fetch Pull Request Template for group.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get pull request template for group", + "tags": [ + "Pull Request Templates" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-10-13~beta", + "2024-05-08" + ], + "x-snyk-api-resource": "pullRequestTemplates", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-08", + "x-stability-level": "stable" + }, + "post": { + "description": "Configures a group level pull request template that will be used on any org or project within that group\n\n#### Required permissions\n\n- `Edit Group settings (group.settings.edit)`", + "operationId": "createOrUpdatePullRequestTemplate", + "parameters": [ + { + "description": "Snyk Group ID", + "example": "7626925e-4b0f-11ee-be56-0242ac120002", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/PullRequestTemplateAttributes" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "description": "Create or update Pull Request Template response", + "properties": { + "attributes": { + "$ref": "#/components/schemas/PullRequestTemplateAttributes" + }, + "id": { + "$ref": "#/components/schemas/PullRequsetTemplateId" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "type": "object" + } + } + }, + "description": "Pull Request Template created for group.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create or update pull request template for group", + "tags": [ + "Pull Request Templates" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-10-13~beta", + "2024-05-08" + ], + "x-snyk-api-resource": "pullRequestTemplates", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-08", + "x-stability-level": "stable" + } + }, + "/groups/{group_id}/sso_connections": { + "get": { + "description": "Returns a list of SSO connections for a group\n\n#### Required permissions\n\n- `View SSO settings (group.sso.read)`", + "operationId": "listGroupSsoConnections", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/SSOConnection" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "List of SSO connections is returned", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get all SSO connections for a group (Early Access)", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-01-31~experimental", + "2023-01-30~beta" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-01-30~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/sso_connections/{sso_id}/users": { + "get": { + "description": "Returns a list of users for a SSO connection\n\n#### Required permissions\n\n- `View SSO settings (group.sso.read)`\n\n- `View users (group.user.read)`", + "operationId": "listGroupSsoConnectionUsers", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SsoId" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/User" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "List of users is returned", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get all users using a given SSO connection (Early Access)", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-01-31~experimental", + "2023-01-30~beta" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-01-30~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/sso_connections/{sso_id}/users/{user_id}": { + "delete": { + "description": "Deletes a user from a Group SSO connection\n\n#### Required permissions\n\n- `View SSO settings (group.sso.read)`\n\n- `Delete users (group.user.delete)`", + "operationId": "deleteUser", + "parameters": [ + { + "description": "The ID of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SsoId" + }, + { + "$ref": "#/components/parameters/UserId20230130" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "204": { + "description": "User is deleted from Group SSO connection", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete a user from a Group SSO connection (Early Access)", + "tags": [ + "Groups" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-01-31~experimental", + "2023-01-30~beta" + ], + "x-snyk-api-resource": "groups", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-01-30~beta", + "x-stability-level": "beta" + } + }, + "/groups/{group_id}/users/{id}": { + "patch": { + "description": "Update a user's membership of the group.\n\nTo remove a user's membership, provide 'null' as the membership parameter (see example).\n\nAt present, only removing memberships is supported by this endpoint. To update a user's group membership, please use\nthe UI or legacy API.\n\n#### Required permissions\n\n- `View Groups (group.read)`\n\n- `View users (group.user.read)`\n\n- `Remove users (group.user.remove)`", + "operationId": "updateUser", + "parameters": [ + { + "description": "The id of the group", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The id of the user", + "in": "path", + "name": "id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "example": { + "data": { + "attributes": { + "membership": null + }, + "id": "55a348e2-c3ad-4bbc-b40e-9b232d1f4122", + "type": "user" + } + }, + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/UserPatchRequestBody" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "204": { + "$ref": "#/components/responses/204" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update a user's role in a group (Early Access)", + "tags": [ + "Users" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-10-06~beta" + ], + "x-snyk-api-resource": "users", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2022-10-06~beta", + "x-stability-level": "beta" + } + }, + "/learn/catalog": { + "get": { + "description": "Returns lessons and learning paths. Optional filters narrow lessons by\nCWE, CVE, Snyk rule, and/or ecosystem.\n\nMultiple identifier params are ANDed by default. Set `best_match=true` for\npriority match: `rules`, then `cves`, then `cwes` (first bucket with\nhits wins). `ecosystem` is applied after identifier matching.\n\nWith filters active, a learning path is returned only if it contains a\nmatching lesson; `attributes.lesson_ids` lists those lessons only.\n\nFor `cwes`, `cves`, and `rules`, pass multiple values comma-separated in\none parameter (e.g. `?cwes=CWE-79,CWE-89`). Repeated parameters\n(e.g. `?cwes=CWE-79\u0026cwes=CWE-89`) are not accepted.\n", + "operationId": "listLearnCatalog", + "parameters": [ + { + "$ref": "#/components/parameters/ApiVersion" + }, + { + "$ref": "#/components/parameters/ContentSource" + }, + { + "$ref": "#/components/parameters/Source" + }, + { + "$ref": "#/components/parameters/CatalogCwes" + }, + { + "$ref": "#/components/parameters/CatalogCves" + }, + { + "$ref": "#/components/parameters/Rules" + }, + { + "$ref": "#/components/parameters/LessonEcosystem" + }, + { + "$ref": "#/components/parameters/BestMatch" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/EducationResourceExtended" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "links", + "jsonapi" + ], + "type": "object" + } + } + }, + "description": "Catalog resources for this request. Filtered responses may omit\nlessons and trim learning-path `lesson_ids`.\n", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List and filter Snyk Learn catalog resources (Early Access)", + "tags": [ + "Catalog Resource" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-05-13~experimental", + "2024-10-13~beta", + "2024-10-15~beta" + ], + "x-snyk-api-resource": "catalog", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" + } + }, + "/openapi": { + "get": { + "description": "List available versions of OpenAPI specification", + "operationId": "listAPIVersions", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "description": "List of available versions is returned", + "headers": { + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "tags": [ + "OpenAPI" + ] + } + }, + "/openapi/{version}": { + "get": { + "description": "Get OpenAPI specification effective at version.", + "operationId": "getAPIVersion", + "parameters": [ + { + "description": "The requested version of the API", + "in": "path", + "name": "version", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + }, + "description": "OpenAPI specification matching requested version is returned", + "headers": { + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "tags": [ + "OpenAPI" + ] + } + }, + "/orgs": { + "get": { + "description": "Get a paginated list of organizations you have access to.", + "operationId": "listOrgs", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "If set, only return organizations within the specified group", + "in": "query", + "name": "group_id", + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "If true, only return organizations that are not part of a group.", + "in": "query", + "name": "is_personal", + "schema": { + "type": "boolean" + } + }, + { + "description": "Only return orgs whose slug exactly matches this value.", + "in": "query", + "name": "slug", + "schema": { + "maxLength": 100, + "pattern": "^[\\w.-]+$", + "type": "string" + } + }, + { + "description": "Only return orgs whose name contains this value.", + "in": "query", + "name": "name", + "schema": { + "maxLength": 100, + "type": "string" + } + }, + { + "description": "Expand the specified related resources in the response to include their attributes.", + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "member_role" + ], + "type": "string" + }, + "type": "array" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/OrgWithRelationships" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of organizations you have access to.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List accessible organizations", + "tags": [ + "Orgs" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-06~experimental", + "2022-12-15~beta", + "2023-05-29", + "2024-02-28" + ], + "x-snyk-api-resource": "orgs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-02-28", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}": { + "get": { + "description": "Get the full details of an organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getOrg", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Unique identifier for org", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "example": "b667f176-df52-4b0a-9954-117af6b05ab7", + "format": "uuid", + "type": "string" + } + }, + { + "description": "Expand the specified related resources in the response to include their attributes.", + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "tenant" + ], + "type": "string" + }, + "type": "array" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/Org20230529" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Returns an instance of an organization", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get organization", + "tags": [ + "Orgs" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-06~experimental", + "2022-12-15~beta", + "2023-05-29" + ], + "x-snyk-api-resource": "orgs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-05-29", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update the details of an organization\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "updateOrg", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/PathOrgId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/OrgUpdateAttributes" + }, + "id": { + "description": "The ID of the resource.", + "format": "uuid", + "type": "string" + }, + "type": { + "description": "The type of the resource.", + "enum": [ + "org" + ], + "example": "org", + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "description": "org resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/OrgAttributes" + }, + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/OrgRelationships" + }, + "type": { + "enum": [ + "org" + ], + "example": "org", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Instance of org is updated", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "204": { + "$ref": "#/components/responses/204" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update organization", + "tags": [ + "Orgs" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-06~experimental", + "2022-12-15~beta", + "2023-05-29", + "2024-02-28" + ], + "x-snyk-api-resource": "orgs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-02-28", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/ai_bom_jobs/{job_id}": { + "get": { + "description": "Returns the status of an AI-BOM job. The job status is returned in the response body. If the job is completed the response status code will be 303, redirecting to the getAiBom endpoint.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getAiBomJob", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2024-10-15", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/OrgIdParam" + }, + { + "$ref": "#/components/parameters/JobIdParam" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetAiBomResponseJobBody" + } + } + }, + "description": "Successful API response with a single resource", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "retry-after": { + "description": "How long the client should wait before retrying (in seconds). retry-after:0 means you can retry immediately", + "example": "10", + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "303": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/JobData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "Redirect to another resource after async processing.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "description": "The location of the ai_bom resource", + "required": true, + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get an AI-BOM job status (Early Access)", + "tags": [ + "AiBom" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "ai_boms", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/ai_boms": { + "post": { + "description": "Triggers the creation of a new AI-BOM. The AI-BOM will be created in a background job. Users should query the background job status by using the getAiBomJob endpoint (/orgs/{org_id}/ai_bom_jobs/{job_id}). The response will contain a content-location header pointing to the getAiBomJob endpoint.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "createAiBom", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2024-10-15", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/OrgIdParam" + }, + { + "$ref": "#/components/parameters/EnrichedParam" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateAiBomRequestBody" + } + } + } + }, + "responses": { + "202": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateAiBomResponseBody" + } + } + }, + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "content-location": { + "description": "The content-location header points to the status endpoint (/orgs/{org_id}/ai_bom_jobs/{job_id}", + "required": true, + "schema": { + "format": "string", + "type": "string" + } + }, + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "503": { + "$ref": "#/components/responses/503" + } + }, + "summary": "Create a new AI-BOM (Early Access)", + "tags": [ + "AiBom" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "ai_boms", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/ai_boms/upload": { + "post": { + "description": "Creates an AI-BOM from a file bundle and persists it to the database. Unlike the standard createAiBom endpoint, this endpoint requires a repo_name and will store the AI-BOM for later retrieval and testing. The AI-BOM will be created in a background job. Users should query the background job status by using the getAiBomJob endpoint.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "createAndUploadAiBom", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2024-10-15", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/OrgIdParam" + }, + { + "$ref": "#/components/parameters/EnrichedParam" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateAndUploadAiBomRequestBody" + } + } + } + }, + "responses": { + "202": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateAiBomResponseBody" + } + } + }, + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "content-location": { + "description": "The content-location header points to the status endpoint (/orgs/{org_id}/ai_bom_jobs/{job_id}", + "required": true, + "schema": { + "format": "string", + "type": "string" + } + }, + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "503": { + "$ref": "#/components/responses/503" + } + }, + "summary": "Create and upload an AI-BOM (Early Access)", + "tags": [ + "AiBom" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "ai_boms", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/ai_boms/{ai_bom_id}": { + "get": { + "description": "Get a AI-BOM once it's job has finished\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getAiBom", + "parameters": [ + { + "description": "The requested version of the endpoint to process the request", + "example": "2024-10-15", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/OrgIdParam" + }, + { + "$ref": "#/components/parameters/AiBomIdParam" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetAiBomResponseBody" + } + } + }, + "description": "Successful API response with a single resource", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + }, + "500": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrence of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "A header containing the version of the endpoint requested by the caller.", + "example": "2024-10-15", + "schema": { + "description": "Requested API version", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "A header containing the version of the endpoint that was served by the API.", + "example": "2024-10-15", + "schema": { + "description": "Resolved API version", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get an AI-BOM. (Early Access)", + "tags": [ + "AiBom" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "ai_boms", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/app_bots": { + "get": { + "deprecated": true, + "description": "Get a list of app bots authorized to an organization. Deprecated, use /orgs/{org_id}/apps/installs instead.\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", + "operationId": "getAppBots", + "parameters": [ + { + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "app" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Organization ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AppBot" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of app bots authorized to the specified organization", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get a list of app bots authorized to an organization.", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "app_bots", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/app_bots/{bot_id}": { + "delete": { + "deprecated": true, + "description": "Revoke app bot authorization. Deprecated, use /orgs/{org_id}/apps/installs/{install_id} instead.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "deleteAppBot", + "parameters": [ + { + "description": "The ID of the app bot", + "in": "path", + "name": "bot_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Organization ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "The app bot has been deauthorized", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Revoke app bot authorization", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "app_bots", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps": { + "get": { + "deprecated": true, + "description": "Get a list of Snyk Apps created by an Organization Deprecated, use /orgs/{org_id}/apps/creations instead.\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", + "operationId": "getApps", + "parameters": [ + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AppData20220311" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of apps created by the specified organization", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get a list of Snyk Apps created by an Organization", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + }, + "post": { + "deprecated": true, + "description": "Create a new app for an organization. Deprecated, use /orgs/{org_id}/apps/creations instead.\n\n#### Required permissions\n\n- `Create Apps (org.app.create)`", + "operationId": "createApp", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AppPostRequest20220311" + } + } + }, + "description": "app to be created" + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AppPostResponse20220311" + } + } + }, + "description": "Created Snyk App successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Create a new app for an organization.", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/creations": { + "get": { + "description": "Get a list of Snyk Apps created by an Organization\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", + "operationId": "getOrgApps", + "parameters": [ + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AppData" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of apps created by the specified organization", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get a list of Snyk Apps created by an Organization", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-11-03", + "x-stability-level": "stable" + }, + "post": { + "description": "Create a new Snyk App for an organization\n\n#### Required permissions\n\n- `Create Apps (org.app.create)`", + "operationId": "createOrgApp", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AppPostRequest" + } + } + }, + "description": "Snyk App details for app to be created." + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AppPostResponse" + } + } + }, + "description": "Created Snyk App successfully.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Create a new Snyk App for an organization", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-11-03", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/creations/{app_id}": { + "delete": { + "description": "Delete a Snyk App by app ID\n\n#### Required permissions\n\n- `Delete Apps (org.app.delete)`", + "operationId": "deleteAppByID", + "parameters": [ + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/AppId" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "204": { + "description": "The app has been deleted", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Delete a Snyk App by app ID", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-11-03", + "x-stability-level": "stable" + }, + "get": { + "description": "Get a Snyk App by app ID\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", + "operationId": "getAppByID", + "parameters": [ + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/AppId" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Attributes of the requested Snyk App.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get a Snyk App by app ID", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-11-03", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update app creation attributes with App ID\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", + "operationId": "updateAppCreationByID", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/AppId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AppPatchRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Attributes of the updated Snyk App.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Update app creation attributes such as name, redirect URIs, and access token time to live using the App ID", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-11-03", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/creations/{app_id}/secrets": { + "post": { + "description": "Manage client secret for a Snyk App\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", + "operationId": "manageAppCreationSecret", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/AppId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "mode": { + "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", + "enum": [ + "replace", + "create", + "delete" + ], + "type": "string" + }, + "secret": { + "description": "Secret to delete when using `delete` mode", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + "type": { + "enum": [ + "app" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppDataWithSecret" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Secret has been updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Manage client secret for a Snyk App", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-11-03", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/installs": { + "get": { + "description": "Get a list of Snyk Apps installed for an Organization\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", + "operationId": "getAppInstallsForOrg", + "parameters": [ + { + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "app" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Organization ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AppInstallData" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of apps installed for the specified organization.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get a list of Snyk Apps installed for an Organization", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + }, + "post": { + "description": "Install a Snyk App to this organization, the Snyk App must use unattended authentication e.g. client credentials\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "createOrgAppInstall", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "properties": { + "type": { + "enum": [ + "app_install" + ], + "example": "app_install", + "type": "string" + } + }, + "type": "object" + }, + "relationships": { + "additionalProperties": false, + "properties": { + "app": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "id": { + "$ref": "#/components/schemas/Uuid" + }, + "type": { + "enum": [ + "app" + ], + "example": "app", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + }, + "required": [ + "app" + ], + "type": "object" + } + }, + "required": [ + "data", + "relationships" + ], + "type": "object" + } + } + }, + "description": "App Install to be created" + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppInstallWithClient" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "The newly created app install.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Install a Snyk App for an Organization", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/installs/{install_id}": { + "delete": { + "description": "Revoke app authorization for a Snyk organization with install ID\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "deleteAppOrgInstallById", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/InstallId" + } + ], + "responses": { + "204": { + "description": "The Snyk App install is revoked, with no content (no errors).", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Revoke app authorization for a Snyk organization with install ID", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/installs/{install_id}/secrets": { + "post": { + "description": "Manage client secret for non-interactive Snyk App installations\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", + "operationId": "updateOrgAppInstallSecret", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/InstallId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "mode": { + "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", + "enum": [ + "replace", + "create", + "delete" + ], + "type": "string" + }, + "secret": { + "description": "Secret to delete when using `delete` mode", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + "type": { + "enum": [ + "app" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppInstallDataWithSecret" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Secret has been updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Manage client secret for non-interactive Snyk App installations", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" + ], + "x-snyk-api-resource": "app_installs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-23", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/{client_id}": { + "delete": { + "deprecated": true, + "description": "Delete an app by app id. Deprecated, use /orgs/{org_id}/apps/creations/{app_id} instead.\n\n#### Required permissions\n\n- `Delete Apps (org.app.delete)`", + "operationId": "deleteApp", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/ClientId" + } + ], + "responses": { + "204": { + "description": "The app has been deleted", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Delete an app", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + }, + "get": { + "deprecated": true, + "description": "Get an App by client id. Deprecated, use /orgs/{org_id}/apps/creations/{app_id} instead.\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", + "operationId": "getApp", + "parameters": [ + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/ClientId" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppData20220311" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Attributes of the requested Snyk App.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Get an app by client id", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + }, + "patch": { + "deprecated": true, + "description": "Update app attributes. Deprecated, use /orgs/{org_id}/apps/creations/{app_id} instead.\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", + "operationId": "updateApp", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/ClientId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AppPatchRequest20220311" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppData20220311" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Attributes of the updated Snyk App.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Update app attributes that are name, redirect URIs, and access token time to live", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/apps/{client_id}/secrets": { + "post": { + "deprecated": true, + "description": "Manage client secrets for an app. Deprecated, use /orgs/{org_id}/apps/creations/{app_id}/secrets instead.\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", + "operationId": "manageSecrets", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId__0" + }, + { + "$ref": "#/components/parameters/ClientId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "mode": { + "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", + "enum": [ + "replace", + "create", + "delete" + ], + "type": "string" + }, + "secret": { + "description": "Secret to delete when using `delete` mode", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AppDataWithSecret20220311" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Secrets have been updated.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400__0" + }, + "401": { + "$ref": "#/components/responses/401__0" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" + } + }, + "summary": "Manage client secrets for an app.", + "tags": [ + "Apps" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-03-11" + ], + "x-snyk-api-resource": "apps", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-03-11", + "x-snyk-sunset-eligible": "2024-07-17", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/assets/repository/aliases": { + "delete": { + "description": "Detach one or more aliased URLs from their canonical repository assets within an organisation. Each removed URL gets a new standalone asset document.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "deleteAliasesInOrg", + "parameters": [ + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/RemoveRepositoryAliasRequestData" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Aliases removed successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Bulk remove aliases from repository assets in org (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "refs", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + }, + "get": { + "description": "Returns a paginated list of alias URL entries for repository assets within an organisation. Use the optional url filter to restrict results to a specific canonical document.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listRepositoryAliasesInOrg", + "parameters": [ + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RepositoryUrlQuery" + }, + { + "description": "Maximum number of alias items to return per page. A single canonical document with multiple aliases may span more than one page.", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/StartingAfterCursor" + }, + { + "$ref": "#/components/parameters/EndingBeforeCursor" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ListRepositoryAliasesResponse" + } + } + }, + "description": "Paginated list of repository alias entries", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List repository aliases in org (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "refs", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + }, + "post": { + "description": "Link one or more alternate repository URLs to a canonical repository asset within an organisation, enabling alias-aware asset lookup.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "createAliasInOrg", + "parameters": [ + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AddRepositoryAliasRequestData" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Aliases created successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Add alias for a repository asset in org (Early Access)", + "tags": [ + "Asset" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2025-09-28~beta" + ], + "x-snyk-api-resource": "refs", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2025-09-28~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/audit_logs/search": { + "get": { + "description": "Search audit logs for an Organization. \"api.access\" events are omitted from results unless explicitly requested using the events parameter. Supported event types:\n - api.access\n - org.app_bot.create\n - org.app.create\n - org.app.delete\n - org.app.edit\n - org.cloud_config.settings.edit\n - org.collection.create\n - org.collection.delete\n - org.collection.edit\n - org.create\n - org.delete\n - org.edit\n - org.ignore_policy.edit\n - org.integration.create\n - org.integration.delete\n - org.integration.edit\n - org.integration.settings.edit\n - org.language_settings.edit\n - org.notification_settings.edit\n - org.org_source.create\n - org.org_source.delete\n - org.org_source.edit\n - org.policy.create\n - org.policy.edit\n - org.policy.delete\n - org.project_filter.create\n - org.project_filter.delete\n - org.project.add\n - org.project.attributes.edit\n - org.project.delete\n - org.project.edit\n - org.project.fix_pr.auto_open\n - org.project.fix_pr.manual_open\n - org.project.ignore.create\n - org.project.ignore.delete\n - org.project.ignore.edit\n - org.project.monitor\n - org.project.pr_check.edit\n - org.project.remove\n - org.project.settings.delete\n - org.project.settings.edit\n - org.project.stop_monitor\n - org.project.tag.add\n - org.project.tag.remove\n - org.project.test\n - org.request_access_settings.edit\n - org.sast_settings.edit\n - org.service_account.create\n - org.service_account.delete\n - org.service_account.edit\n - org.settings.feature_flag.edit\n - org.target.create\n - org.target.delete\n - org.user.add\n - org.user.invite\n - org.user.invite.accept\n - org.user.invite.revoke\n - org.user.invite_link.accept\n - org.user.invite_link.create\n - org.user.invite_link.revoke\n - org.user.leave\n - org.user.provision.accept\n - org.user.provision.create\n - org.user.provision.delete\n - org.user.remove\n - org.user.role.create\n - org.user.role.delete\n - org.user.role.details.edit\n - org.user.role.edit\n - org.user.role.permissions.edit\n - org.webhook.add\n - org.webhook.delete\n - user.org.notification_settings.edit\n\n#### Required permissions\n\n- `View audit logs (org.audit_log.read)`", + "operationId": "listOrgAuditLogs", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/OrgId" + }, + { + "$ref": "#/components/parameters/Cursor" + }, + { + "$ref": "#/components/parameters/From" + }, + { + "$ref": "#/components/parameters/To" + }, + { + "$ref": "#/components/parameters/Size" + }, + { + "$ref": "#/components/parameters/SortOrder" + }, + { + "$ref": "#/components/parameters/UserId" + }, + { + "$ref": "#/components/parameters/ProjectId" + }, + { + "$ref": "#/components/parameters/Events" + }, + { + "$ref": "#/components/parameters/ExcludeEvents" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/AuditLogSearch" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" + } + } + }, + "description": "Organization Audit Logs.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Search Organization audit logs.", + "tags": [ + "Audit Logs" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-09-11", + "2024-04-29" + ], + "x-snyk-api-resource": "audit-logs", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-04-29", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/brokers/connections": { + "get": { + "description": "List all Broker connections integrated with a given org\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listBrokerConnectionsForOrg", + "parameters": [ + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ListBrokerConnectionsSummaryResponse" + } + } + }, + "description": "Returns the list of Broker connections by org ID", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" }, - { - "attribute": "sources", - "operator": "equal", - "values": [ - "snyk", - "github" - ] - } - ] - } - } - } - }, - "example3": { - "summary": "Nested filters - X and (Y or Z)", - "value": { - "query": { - "attributes": { - "operator": "and", - "values": [ - { - "attribute": "type", - "operator": "equal", - "values": [ - "repository" - ] + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" }, - { - "operator": "or", - "values": [ - { - "attribute": "class", - "operator": "in", - "values": [ - "A", - "B" + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" }, - { - "attribute": "risk_factors", - "operator": "in", - "values": [ - "Deployed" - ] + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" } - ] - } - ] - } - } - } - }, - "example4": { - "summary": "Tags filtering", - "value": { - "query": { - "attributes": { - "operator": "and", - "values": [ - { - "attribute": "type", - "operator": "equal", - "values": [ - "repository" - ] + }, + "type": "object" }, - { - "attribute": "tags.environment", - "operator": "equal", - "values": [ - "production" - ] + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" }, - { - "attribute": "tags.team", - "operator": "equal", - "values": [ - "backend" - ] + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" } - ] - } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } - } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" } }, - "schema": { - "oneOf": [ - { - "additionalProperties": false, - "description": "Empty body", - "type": "object" - }, - { - "$ref": "#/components/schemas/SearchObject" - } - ] + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "description": "Filter criteria for listing assets. Can be empty or contain query filters.", - "required": true - }, - "responses": { - "200": { + "401": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/AssetResponseData" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { "additionalProperties": false, + "example": { + "version": "1.0" + }, "properties": { "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "links": { - "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Assets found", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "List Assets with filters (Early Access)", - "tags": [ - "Asset" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta", - "2025-09-28~beta" - ], - "x-snyk-api-resource": "assets", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-28~beta", - "x-stability-level": "beta" - } - }, - "/groups/{group_id}/assets/{asset_id}": { - "get": { - "description": "Get an Asset by its ID\n\n#### Required permissions\n\n- `View Groups (group.read)`", - "operationId": "getAsset", - "parameters": [ - { - "$ref": "#/components/parameters/AssetId" - }, - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/AssetResponseData" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { "additionalProperties": false, + "example": { + "version": "1.0" + }, "properties": { "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Asset found", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get an Asset by its ID (Early Access)", - "tags": [ - "Asset" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta", - "2025-09-28~beta" - ], - "x-snyk-api-resource": "assets", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-28~beta", - "x-stability-level": "beta" - }, - "patch": { - "description": "The endpoint allows for partial updates to an asset's attributes.\n\n#### Required permissions\n\n- `Edit Group Details (group.edit)`", - "operationId": "updateAsset", - "parameters": [ - { - "$ref": "#/components/parameters/AssetId" - }, - { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/UpdateAssetRequestData" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "required": true - }, - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/AssetResponseData" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { "additionalProperties": false, + "example": { + "version": "1.0" + }, "properties": { "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Asset updated successfully", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Update asset attributes (Early Access)", + "summary": "List Broker connections for a given organization", "tags": [ - "Asset" + "BrokerConnections" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2025-09-28~beta" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "assets", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-28~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" } }, - "/groups/{group_id}/assets/{asset_id}/relationships/assets": { + "/orgs/{org_id}/cloud/environments": { "get": { - "description": "List related assets with pagination\n\n#### Required permissions\n\n- `View Groups (group.read)`", - "operationId": "listRelatedAssets", + "description": "List environments for an organization\n\n#### Required permissions\n\n- `View environments (org.cloud_environments.read)`", + "operationId": "listEnvironments", "parameters": [ { - "description": "Group ID", + "$ref": "#/components/parameters/Version" + }, + { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -23301,155 +67754,47 @@ } }, { - "$ref": "#/components/parameters/AssetId" + "$ref": "#/components/parameters/CreatedAfter" }, { - "$ref": "#/components/parameters/StartingAfterCursor" + "$ref": "#/components/parameters/CreatedBefore" }, { - "$ref": "#/components/parameters/EndingBeforeCursor" + "$ref": "#/components/parameters/UpdatedAfter" }, { - "description": "Number of records to return", - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "maximum": 100, - "minimum": 10, - "type": "number" - } + "$ref": "#/components/parameters/UpdatedBefore" }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/NameInQuery" }, { - "$ref": "#/components/parameters/AssetTypeFilter" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/AssetResponseData" - }, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "properties": { - "version": { - "type": "string" - } - }, - "type": "object" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "type": "object" - } - } - }, - "description": "Related assets found", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" + "$ref": "#/components/parameters/KindInQuery" }, - "404": { - "$ref": "#/components/responses/404" + { + "$ref": "#/components/parameters/StatusInQuery" }, - "409": { - "$ref": "#/components/responses/409" + { + "$ref": "#/components/parameters/IdInQuery" }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "List related assets with pagination (Early Access)", - "tags": [ - "Asset" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta", - "2025-09-28~beta" - ], - "x-snyk-api-resource": "assets", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-28~beta", - "x-stability-level": "beta" - } - }, - "/groups/{group_id}/assets/{asset_id}/relationships/projects": { - "get": { - "description": "List asset projects with pagination\n\n#### Required permissions\n\n- `View Groups (group.read)`", - "operationId": "listAssetProjects", - "parameters": [ { - "description": "Group ID", - "in": "path", - "name": "group_id", - "required": true, + "description": "Filter environments by project ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "query", + "name": "project_id", "schema": { "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/AssetId" - }, - { - "$ref": "#/components/parameters/StartingAfterCursor" - }, - { - "$ref": "#/components/parameters/EndingBeforeCursor" + "$ref": "#/components/parameters/StartingAfter" }, { - "description": "Number of records to return", - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "maximum": 100, - "minimum": 10, - "type": "number" - } + "$ref": "#/components/parameters/EndingBefore" }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/Limit" } ], "responses": { @@ -23457,39 +67802,50 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { "items": { - "$ref": "#/components/schemas/AssetProjectResponseData" + "properties": { + "attributes": { + "$ref": "#/components/schemas/EnvironmentAttributes" + }, + "id": { + "description": "Environment ID", + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/EnvironmentRelationships" + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" }, "type": "array" }, "jsonapi": { - "additionalProperties": false, - "properties": { - "version": { - "type": "string" - } - }, - "type": "object" + "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" + "$ref": "#/components/schemas/PaginatedLinks" } }, "type": "object" } } }, - "description": "Assets found", + "description": "Returns a list of environments", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -23526,167 +67882,135 @@ "$ref": "#/components/responses/500" } }, - "summary": "List asset projects with pagination (Early Access)", + "summary": "List Environments (Early Access)", "tags": [ - "Asset" + "Cloud" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta", - "2025-09-28~beta" + "2022-04-13~experimental", + "2022-12-21~beta", + "2023-10-19~beta" ], - "x-snyk-api-resource": "assets", + "x-snyk-api-resource": "environments", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-28~beta", + "x-snyk-api-version": "2023-10-19~beta", "x-stability-level": "beta" - } - }, - "/groups/{group_id}/audit_logs/search": { - "get": { - "description": "Search audit logs for a Group. \"api.access\" events are omitted from results unless explicitly requested using the events parameter. Some Organization level events are supported as well as the following\nGroup level events:\n - api.access\n - group.cloud_config.settings.edit\n - group.create\n - group.delete\n - group.edit\n - group.notification_settings.edit\n - group.org.add\n - group.org.remove\n - group.policy.create\n - group.policy.delete\n - group.policy.edit\n - group.request_access_settings.edit\n - group.role.create\n - group.role.delete\n - group.role.edit\n - group.service_account.create\n - group.service_account.delete\n - group.service_account.edit\n - group.settings.edit\n - group.settings.feature_flag.edit\n - group.sso.add\n - group.sso.auth0_connection.create\n - group.sso.auth0_connection.edit\n - group.sso.create\n - group.sso.delete\n - group.sso.edit\n - group.sso.membership.sync\n - group.sso.remove\n - group.tag.create\n - group.tag.delete\n - group.user.add\n - group.user.remove\n - group.user.role.edit\n\n#### Required permissions\n\n- `View Audit Logs (group.audit.read)`", - "operationId": "listGroupAuditLogs", + }, + "post": { + "description": "Create a new environment and run a scan\n\n#### Required permissions\n\n- `Create environments (org.cloud_environments.create)`", + "operationId": "createEnvironment", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/GroupId" - }, - { - "$ref": "#/components/parameters/Cursor" - }, - { - "$ref": "#/components/parameters/From" - }, - { - "$ref": "#/components/parameters/To" - }, - { - "$ref": "#/components/parameters/Size" - }, - { - "$ref": "#/components/parameters/SortOrder" - }, - { - "$ref": "#/components/parameters/UserId" - }, - { - "$ref": "#/components/parameters/ProjectId" - }, - { - "$ref": "#/components/parameters/Events" - }, - { - "$ref": "#/components/parameters/ExcludeEvents" + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AuditLogSearch" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/EnvironmentCreateAttributes" + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType" + } }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data" - ], - "type": "object" - } - } - }, - "description": "Group Audit Logs.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "required": [ + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Search Group audit logs.", - "tags": [ - "Audit Logs" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-09-11", - "2024-04-29" - ], - "x-snyk-api-resource": "audit-logs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-04-29", - "x-stability-level": "stable" - } - }, - "/groups/{group_id}/export": { - "post": { - "description": "Create and start an export for a group\n\n#### Required permissions\n\n- `View reports (group.report.read)`", - "operationId": "createGroupExport", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/groupId" - }, - { - "$ref": "#/components/parameters/include_deleted" - }, - { - "$ref": "#/components/parameters/include_deactivated" } - ], - "requestBody": { - "$ref": "#/components/requestBodies/CreateGroupExport" }, "responses": { - "202": { - "$ref": "#/components/responses/CreateExport" + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "description": "Environment resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/EnvironmentAttributes" + }, + "id": { + "description": "Environment ID", + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/EnvironmentRelationships" + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + } + } + } + }, + "description": "Created environment successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "400": { "$ref": "#/components/responses/400" @@ -23703,50 +68027,72 @@ "409": { "$ref": "#/components/responses/409" }, - "429": { - "$ref": "#/components/responses/TooManyRequests" - }, "500": { "$ref": "#/components/responses/500" } }, - "security": [ - { - "TokenAuth": [] - } - ], - "summary": "Start an export", + "summary": "Create New Environment (Early Access)", "tags": [ - "Export" + "Cloud" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2022-04-13~experimental", + "2022-12-21~beta", + "2023-10-19~beta" ], - "x-snyk-api-resource": "export", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" + "x-snyk-api-resource": "environments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-10-19~beta", + "x-stability-level": "beta" } }, - "/groups/{group_id}/export/{export_id}": { - "get": { - "description": "Get an export results\n\n#### Required permissions\n\n- `View reports (group.report.read)`", - "operationId": "getGroupExport", + "/orgs/{org_id}/cloud/environments/{environment_id}": { + "delete": { + "description": "Delete an environment\n\n#### Required permissions\n\n- `Delete environments (org.cloud_environments.delete)`", + "operationId": "deleteEnvironment", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/groupId" + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/exportId" + "$ref": "#/components/parameters/EnvironmentId" } ], "responses": { - "200": { - "$ref": "#/components/responses/GetExport" + "204": { + "description": "Returns an empty response", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "400": { "$ref": "#/components/responses/400" @@ -23767,2009 +68113,1554 @@ "$ref": "#/components/responses/500" } }, - "security": [ - { - "TokenAuth": [] - } - ], - "summary": "Get export results", + "summary": "Delete Environment (Early Access)", "tags": [ - "Export" + "Cloud" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2022-04-13~experimental", + "2022-12-21~beta", + "2023-10-19~beta" ], - "x-snyk-api-resource": "export", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - } - }, - "/groups/{group_id}/issues": { - "get": { - "description": "Get a list of a group's issues.\n\n#### Required permissions\n\n- `View Issues (group.issues.read)`", - "operationId": "listGroupIssues", + "x-snyk-api-resource": "environments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-10-19~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Update an environment\n\n#### Required permissions\n\n- `Update environments (org.cloud_environments.edit)`", + "operationId": "updateEnvironment", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "Group ID", + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { - "example": "4a18d42f-0706-4ad0-b127-24078731fbed", "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/ScanItemId" - }, - { - "$ref": "#/components/parameters/ScanItemType" - }, - { - "$ref": "#/components/parameters/Type" - }, - { - "description": "A filter to select issues updated before this date.", - "in": "query", - "name": "updated_before", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "A filter to select issues updated after this date.", - "in": "query", - "name": "updated_after", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "A filter to select issues created before this date.", - "in": "query", - "name": "created_before", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "A filter to select issues created after this date.", - "in": "query", - "name": "created_after", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/EffectiveSeverityLevel" - }, - { - "$ref": "#/components/parameters/Status" - }, - { - "$ref": "#/components/parameters/Ignored" + "$ref": "#/components/parameters/EnvironmentId" } ], - "responses": { - "200": { - "$ref": "#/components/responses/ListIssues200" - }, - "401": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/EnvironmentUpdateAttributes" }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" - } - } - }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } - } - } - }, - "403": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" }, - "minItems": 1, - "type": "array" + "type": { + "$ref": "#/components/schemas/EnvironmentType" + } }, - "jsonapi": { + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" - }, + "description": "environment resource object", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/EnvironmentAttributes" + }, + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/EnvironmentRelationships" + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType" } }, "required": [ - "version" + "id", + "type" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "description": "Updated an environment successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update Environment (Early Access)", + "tags": [ + "Cloud" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-13~experimental", + "2022-12-21~beta", + "2023-10-19~beta" + ], + "x-snyk-api-resource": "environments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-10-19~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/cloud/permissions": { + "post": { + "description": "Generate IAC template for Snyk to access your cloud resources\n\n#### Required permissions\n\n- `Create environments (org.cloud_environments.create)`", + "operationId": "getPermissions", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreatePermissionsAttributes" + }, + "type": { + "example": "permission", + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "201": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" - }, + "description": "permissions resource object", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/PermissionsAttributes" + }, + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "type": { + "example": "permission", "type": "string" } }, "required": [ - "version" + "attributes", + "id", + "type" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" + } } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Created permissions successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Generate Cloud Provider Permissions (Early Access)", + "tags": [ + "Cloud" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-13~experimental", + "2022-12-21~beta", + "2023-10-19~beta" + ], + "x-snyk-api-resource": "permissions", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-10-19~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/cloud/resources": { + "get": { + "description": "List resources for an organization\n\n#### Required permissions\n\n- `View resources (org.cloud_resources.read)`", + "operationId": "listResources", + "parameters": [ + { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EnvironmentIdQuery" + }, + { + "$ref": "#/components/parameters/ResourceType" + }, + { + "$ref": "#/components/parameters/ResourceId" + }, + { + "$ref": "#/components/parameters/NativeId" + }, + { + "$ref": "#/components/parameters/Id" + }, + { + "$ref": "#/components/parameters/Platform" + }, + { + "$ref": "#/components/parameters/Name" + }, + { + "$ref": "#/components/parameters/Kind" + }, + { + "$ref": "#/components/parameters/Location" + }, + { + "$ref": "#/components/parameters/Removed" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" + "properties": { + "data": { + "items": { + "properties": { + "attributes": { + "$ref": "#/components/schemas/ResourceAttributes" }, "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", "format": "uuid", "type": "string" }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" + "relationships": { + "$ref": "#/components/schemas/ResourceRelationships" }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", + "type": { + "example": "resource", "type": "string" } }, "required": [ - "status", - "detail" + "id", + "type" ], "type": "object" }, - "minItems": 1, "type": "array" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Returns a list of resources", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Get issues by group ID", + "summary": "List Resources (Early Access)", "tags": [ - "Issues" + "Cloud" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-03-10~experimental", - "2023-09-29~beta", - "2024-01-23" + "2022-04-13~experimental", + "2022-12-21~beta", + "2023-10-19~beta" ], - "x-snyk-api-resource": "issues", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-01-23", - "x-stability-level": "stable" + "x-snyk-api-resource": "resources", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-10-19~beta", + "x-stability-level": "beta" } }, - "/groups/{group_id}/issues/{issue_id}": { + "/orgs/{org_id}/cloud/scans": { "get": { - "description": "Get an issue\n\n#### Required permissions\n\n- `View Issues (group.issues.read)`", - "operationId": "getGroupIssueByIssueID", + "description": "List scans for an organization\n\n#### Required permissions\n\n- `View scans (org.cloud_scans.read)`", + "operationId": "listScan", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Group ID", + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { - "example": "4a18d42f-0706-4ad0-b127-24078731fbed", "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/PathIssueId20240123" } ], "responses": { "200": { - "$ref": "#/components/responses/GetIssue20020240123" - }, - "400": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], + "data": { "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" + "attributes": { + "$ref": "#/components/schemas/ScanAttributes" }, "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", + "description": "Scan ID", + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", "format": "uuid", "type": "string" }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" + "relationships": { + "$ref": "#/components/schemas/ScanRelationships" }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" + "type": { + "$ref": "#/components/schemas/ScanType" } }, "required": [ - "status", - "detail" + "id", + "type" ], "type": "object" }, - "minItems": 1, "type": "array" }, "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "type": "object" + } + } + }, + "description": "Returns a list of scan instances", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List Scans (Early Access)", + "tags": [ + "Cloud" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-13~experimental", + "2022-12-21~beta" + ], + "x-snyk-api-resource": "scans", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2022-12-21~beta", + "x-stability-level": "beta" + }, + "post": { + "description": "Create and trigger a new scan for an environment\n\n#### Required permissions\n\n- `Create scans (org.cloud_scans.create)`", + "operationId": "createScan", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ScanCreateAttributes" + }, + "relationships": { + "$ref": "#/components/schemas/ScanCreateRelationships" + }, + "type": { + "$ref": "#/components/schemas/ScanType" + } + }, + "required": [ + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" + "description": "Scan resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/ScanAttributes" + }, + "id": { + "description": "Scan ID", + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/ScanRelationships" + }, + "type": { + "$ref": "#/components/schemas/ScanType" + } }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + } + } + } + }, + "description": "Created scan successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create Scan (Early Access)", + "tags": [ + "Cloud" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-04-13~experimental", + "2022-12-21~beta" + ], + "x-snyk-api-resource": "scans", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2022-12-21~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/cloud/scans/{scan_id}": { + "get": { + "description": "Get a single scan for an organization\n\n#### Required permissions\n\n- `View scans (org.cloud_scans.read)`", + "operationId": "getScan", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Organization ID", + "example": "9a46d918-8764-458c-1234-0987abcd6543", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/ScanId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/ScanAttributes" + }, + "id": { + "description": "Scan ID", + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/ScanRelationships" + }, + "type": { + "$ref": "#/components/schemas/ScanType" } }, "required": [ - "version" + "id", + "type" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Returns a single scan instance", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get scan (Early Access)", + "tags": [ + "Cloud" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-12-21~beta" + ], + "x-snyk-api-resource": "scans", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2022-12-21~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/collections": { + "get": { + "description": "Return a list of organization's collections with issues counts and projects count.\n\n#### Required permissions\n\n- `View Collections (org.collection.read)`\n\n- `View Project history (org.project.snapshot.read)`", + "operationId": "getCollections", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Return collections sorted by the specified attributes", + "in": "query", + "name": "sort", + "schema": { + "enum": [ + "name", + "projectsCount", + "issues" + ], + "type": "string" + } + }, + { + "description": "Return collections sorted in the specified direction", + "in": "query", + "name": "direction", + "schema": { + "default": "DESC", + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + { + "allowEmptyValue": true, + "description": "Return collections which names include the provided string", + "in": "query", + "name": "name", + "schema": { + "maxLength": 255, + "type": "string" + } + }, + { + "allowEmptyValue": true, + "description": "Return collections where is_generated matches the provided boolean", + "in": "query", + "name": "is_generated", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], + "data": { "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" + "$ref": "#/components/schemas/CollectionResponse" }, - "minItems": 1, "type": "array" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "description": "Returns a list of collections", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, "403": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get collections", + "tags": [ + "Collection" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-01~beta", + "2023-09-12" + ], + "x-snyk-api-resource": "collections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-12", + "x-stability-level": "stable" + }, + "post": { + "description": "Create a collection\n\n#### Required permissions\n\n- `Create Collections (org.collection.create)`", + "operationId": "createCollection", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateCollectionRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" - }, + "description": "collection resource object", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/CollectionAttributes" + }, + "id": { + "format": "uuid", "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/CollectionRelationships" + }, + "type": { + "$ref": "#/components/schemas/Types" } }, "required": [ - "version" + "id", + "attributes", + "relationships" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "description": "Returned collection", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" - } - } - }, - "description": "Not Found: The resource being operated on could not be found.", + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create a collection", + "tags": [ + "Collection" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-01~beta", + "2023-09-12" + ], + "x-snyk-api-resource": "collections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-12", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/collections/{collection_id}": { + "delete": { + "description": "Delete a collection\n\n#### Required permissions\n\n- `Delete Collections (org.collection.delete)`", + "operationId": "deleteCollection", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/CollectionId" + } + ], + "responses": { + "204": { + "description": "Collection was deleted successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete a collection", + "tags": [ + "Collection" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-01~beta", + "2023-09-12" + ], + "x-snyk-api-resource": "collections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-12", + "x-stability-level": "stable" + }, + "get": { + "description": "Get a collection\n\n#### Required permissions\n\n- `View Collections (org.collection.read)`", + "operationId": "getCollection", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/CollectionId" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" - }, + "description": "collection resource object", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/CollectionAttributes" + }, + "id": { + "format": "uuid", "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/CollectionRelationships" + }, + "type": { + "$ref": "#/components/schemas/Types" } }, "required": [ - "version" + "id", + "attributes", + "relationships" ], "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, "type": "object" } } }, - "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "description": "Returned collection", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a collection", + "tags": [ + "Collection" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-01~beta", + "2023-09-12" + ], + "x-snyk-api-resource": "collections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-12", + "x-stability-level": "stable" + }, + "patch": { + "description": "Edit a collection\n\n#### Required permissions\n\n- `Edit Collections (org.collection.edit)`", + "operationId": "updateCollection", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/CollectionId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateCollectionRequest" + } + } + } + }, + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" - }, + "description": "collection resource object", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/CollectionAttributes" + }, + "id": { + "format": "uuid", "type": "string" + }, + "relationships": { + "$ref": "#/components/schemas/CollectionRelationships" + }, + "type": { + "$ref": "#/components/schemas/Types" } }, "required": [ - "version" + "id", + "attributes", + "relationships" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Returned collection", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Get an issue", + "summary": "Edit a collection", "tags": [ - "Issues" + "Collection" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-01-23" + "2023-06-01~beta", + "2023-09-12" ], - "x-snyk-api-resource": "issues", + "x-snyk-api-resource": "collections", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-01-23", + "x-snyk-api-version": "2023-09-12", "x-stability-level": "stable" } }, - "/groups/{group_id}/jobs/export/{export_id}": { - "get": { - "description": "Get an export job status\n\n#### Required permissions\n\n- `View reports (group.report.read)`", - "operationId": "getGroupExportJobStatus", + "/orgs/{org_id}/collections/{collection_id}/relationships/projects": { + "delete": { + "description": "Remove projects from a collection by specifying an array of project ids\n\n#### Required permissions\n\n- `Edit Collections (org.collection.edit)`", + "operationId": "deleteProjectsCollection", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/groupId" + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/exportId" + "$ref": "#/components/parameters/CollectionId" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/DeleteProjectsFromCollectionRequest" + } + } + } + }, "responses": { - "200": { - "$ref": "#/components/responses/GetExportJob" + "204": { + "description": "successfully removing projects from a collection", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "400": { "$ref": "#/components/responses/400" @@ -25790,40 +69681,40 @@ "$ref": "#/components/responses/500" } }, - "security": [ - { - "TokenAuth": [] - } - ], - "summary": "Get export status", + "summary": "Remove projects from a collection", "tags": [ - "Export" + "Collection" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2023-06-01~beta", + "2023-09-12" ], - "x-snyk-api-resource": "export", + "x-snyk-api-resource": "collections", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", + "x-snyk-api-version": "2023-09-12", "x-stability-level": "stable" - } - }, - "/groups/{group_id}/memberships": { + }, "get": { - "description": "Returns all memberships of the group\n\n#### Required permissions\n\n- `View Group Memberships (group.membership.read)`", - "operationId": "listGroupMemberships", + "description": "Return a list of organization's projects that are from the specified collection.\n\n#### Required permissions\n\n- `View Collections (org.collection.read)`\n\n- `View Projects (org.project.read)`\n\n- `View Project history (org.project.snapshot.read)`", + "operationId": "getProjectsOfCollection", "parameters": [ { - "description": "The ID of the group", + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", "type": "string" } }, + { + "$ref": "#/components/parameters/CollectionId" + }, { "$ref": "#/components/parameters/StartingAfter" }, @@ -25834,28 +69725,100 @@ "$ref": "#/components/parameters/Limit" }, { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/SortBy__0" - }, - { - "$ref": "#/components/parameters/SortOrder__0" - }, - { - "$ref": "#/components/parameters/EmailFilter" + "description": "Return projects sorted by the specified attributes", + "in": "query", + "name": "sort", + "schema": { + "enum": [ + "imported", + "last_tested_at", + "issues" + ], + "type": "string" + } }, { - "$ref": "#/components/parameters/UserIdFilter" + "description": "Return projects sorted in the specified direction", + "in": "query", + "name": "direction", + "schema": { + "default": "DESC", + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } }, { - "$ref": "#/components/parameters/UsernameFilter" + "description": "Return projects that belong to the provided targets", + "in": "query", + "name": "target_id", + "schema": { + "items": { + "format": "uuid", + "type": "string" + }, + "maxItems": 25, + "type": "array" + } }, { - "$ref": "#/components/parameters/RoleFilter" + "description": "Return projects that are with or without issues", + "in": "query", + "name": "show", + "schema": { + "items": { + "enum": [ + "vuln-groups", + "clean-groups" + ], + "type": "string" + }, + "type": "array" + } }, { - "$ref": "#/components/parameters/IncludeGroupMembershipCount" + "description": "Return projects that match the provided integration types", + "in": "query", + "name": "integration", + "schema": { + "items": { + "enum": [ + "acr", + "api", + "artifactory-cr", + "aws-lambda", + "azure-functions", + "azure-repos", + "bitbucket-cloud", + "bitbucket-connect-app", + "bitbucket-server", + "cli", + "cloud-foundry", + "digitalocean-cr", + "docker-hub", + "ecr", + "gcr", + "github-cr", + "github-enterprise", + "github", + "gitlab-cr", + "gitlab", + "google-artifact-cr", + "harbor-cr", + "heroku", + "ibm-cloud", + "kubernetes", + "nexus-cr", + "pivotal", + "quay-cr", + "terraform-cloud" + ], + "type": "string" + }, + "type": "array" + } } ], "responses": { @@ -25863,27 +69826,11 @@ "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/GroupMembershipResponseData" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/GetProjectsOfCollectionResponse" } } }, - "description": "List of group memberships is returned", + "description": "Returns a list of projects from the specified collection", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -25921,28 +69868,31 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get all memberships of the group", + "summary": "Get projects from the specified collection", "tags": [ - "Groups" + "Collection" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-05-09~experimental", - "2024-08-25" + "2023-06-01~beta", + "2023-09-12" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "collections", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2023-09-12", "x-stability-level": "stable" }, "post": { - "description": "Create a group membership for a user with role\n\n#### Required permissions\n\n- `Add Group Memberships (group.membership.add)`", - "operationId": "createGroupMembership", + "description": "Add projects to a collection by specifying an array of project ids\n\n#### Required permissions\n\n- `Edit Collections (org.collection.edit)`", + "operationId": "updateCollectionWithProjects", "parameters": [ { - "description": "The ID of the group", + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -25950,39 +69900,21 @@ } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/CollectionId" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/CreateGroupMembershipRequestBody" + "$ref": "#/components/schemas/UpdateCollectionWithProjectsRequest" } } } }, "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/GroupMembership" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "type": "object" - } - } - }, - "description": "Membership for the group was created", + "204": { + "description": "successfully adding projects to a collection", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -26026,56 +69958,166 @@ "$ref": "#/components/responses/500" } }, - "summary": "Create a group membership for a user with role", + "summary": "Add projects to a collection", "tags": [ - "Groups" + "Collection" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-05-09~experimental", - "2024-08-25" + "2023-06-01~beta", + "2023-09-12" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "collections", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2023-09-12", "x-stability-level": "stable" } }, - "/groups/{group_id}/memberships/{membership_id}": { - "delete": { - "description": "Deletes a membership from a group\n\n#### Required permissions\n\n- `Delete Group Memberships (group.membership.delete)`", - "operationId": "deleteGroupMembership", + "/orgs/{org_id}/container_images": { + "get": { + "description": "List instances of container image\n\n#### Required permissions\n\n- `View container images (org.container_image.read)`", + "operationId": "listContainerImage", "parameters": [ { - "description": "The ID of the group", + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { + "example": "f59045b3-f093-40c3-871d-a334ae30c568", "format": "uuid", "type": "string" } }, { - "description": "The ID of the Group Membership", - "in": "path", - "name": "membership_id", - "required": true, + "$ref": "#/components/parameters/ImageIds" + }, + { + "description": "The image Operating System and processor architecture", + "example": "linux/amd64", + "in": "query", + "name": "platform", "schema": { - "format": "uuid", + "enum": [ + "aix/ppc64", + "android/386", + "android/amd64", + "android/arm", + "android/arm/v5", + "android/arm/v6", + "android/arm/v7", + "android/arm64", + "android/arm64/v8", + "darwin/amd64", + "darwin/arm", + "darwin/arm/v5", + "darwin/arm/v6", + "darwin/arm/v7", + "darwin/arm64", + "darwin/arm64/v8", + "dragonfly/amd64", + "freebsd/386", + "freebsd/amd64", + "freebsd/arm", + "freebsd/arm/v5", + "freebsd/arm/v6", + "freebsd/arm/v7", + "illumos/amd64", + "ios/arm64", + "ios/arm64/v8", + "js/wasm", + "linux/386", + "linux/amd64", + "linux/arm", + "linux/arm/v5", + "linux/arm/v6", + "linux/arm/v7", + "linux/arm64", + "linux/arm64/v8", + "linux/loong64", + "linux/mips", + "linux/mipsle", + "linux/mips64", + "linux/mips64le", + "linux/ppc64", + "linux/ppc64le", + "linux/riscv64", + "linux/s390x", + "linux/x86_64", + "netbsd/386", + "netbsd/amd64", + "netbsd/arm", + "netbsd/arm/v5", + "netbsd/arm/v6", + "netbsd/arm/v7", + "openbsd/386", + "openbsd/amd64", + "openbsd/arm", + "openbsd/arm/v5", + "openbsd/arm/v6", + "openbsd/arm/v7", + "openbsd/arm64", + "openbsd/arm64/v8", + "plan9/386", + "plan9/amd64", + "plan9/arm", + "plan9/arm/v5", + "plan9/arm/v6", + "plan9/arm/v7", + "solaris/amd64", + "windows/386", + "windows/amd64", + "windows/arm", + "windows/arm/v5", + "windows/arm/v6", + "windows/arm/v7", + "windows/arm64", + "windows/arm64/v8" + ], + "example": "linux/amd64", "type": "string" } }, { - "$ref": "#/components/parameters/Cascade" + "$ref": "#/components/parameters/Names" }, { "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" } ], "responses": { - "204": { - "description": "group membership is deleted from Group", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/Image" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "type": "object" + } + } + }, + "description": "Returns a list of container image instances", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -26116,139 +70158,43 @@ "$ref": "#/components/responses/500" } }, - "summary": "Delete a membership from a group", - "tags": [ - "Groups" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-05-09~experimental", - "2024-08-25" - ], - "x-snyk-api-resource": "groups", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", - "x-stability-level": "stable" - }, - "patch": { - "description": "Update a role from a group membership\n\n#### Required permissions\n\n- `Edit Group Memberships (group.membership.edit)`", - "operationId": "updateGroupUserMembership", - "parameters": [ - { - "description": "The ID of the group", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The ID of the Group Membership", - "in": "path", - "name": "membership_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/MembershipPatchRequestBody" - } - }, - "type": "object" - } - } - } - }, - "responses": { - "204": { - "$ref": "#/components/responses/204" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update a role from a group membership", + "summary": "List instances of container image", "tags": [ - "Groups" + "ContainerImage" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-05-09~experimental", - "2024-08-25" + "2023-03-08~beta", + "2023-08-18~beta", + "2023-11-02" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "container_images", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2023-11-02", "x-stability-level": "stable" } }, - "/groups/{group_id}/org_memberships": { + "/orgs/{org_id}/container_images/{image_id}": { "get": { - "description": "Get list of org memberships of a group user\n\n#### Required permissions\n\n- `View Group Memberships (group.membership.read)`\n\n- `View Organizations (group.org.list)`", - "operationId": "listGroupUserOrgMemberships", + "description": "Get instance of container image\n\n#### Required permissions\n\n- `View container images (org.container_image.read)`", + "operationId": "getContainerImage", "parameters": [ { - "description": "The ID of the group", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "description": "The ID of the User", - "in": "query", - "name": "user_id", + "description": "Org ID", + "in": "path", + "name": "org_id", "required": true, "schema": { + "example": "f59045b3-f093-40c3-871d-a334ae30c568", "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/OrgName" - }, - { - "$ref": "#/components/parameters/RoleFilter" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/ImageId20231102" } ], "responses": { @@ -26258,37 +70204,20 @@ "schema": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/GroupMembershipOrgMembership" - }, - "type": "array" + "$ref": "#/components/schemas/Image" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" - }, - "meta": { - "properties": { - "org_membership_count": { - "description": "Org memberships for this user within this group.", - "type": "number" - } - }, - "type": "object" + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "data", - "links" - ], "type": "object" } } }, - "description": "A list of org memberships is returned", + "description": "Returns an instance of container image", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -26329,45 +70258,51 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get list of org memberships of a group user", + "summary": "Get instance of container image", "tags": [ - "Groups" + "ContainerImage" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-08-25" + "2023-03-08~beta", + "2023-11-02" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "container_images", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2023-11-02", "x-stability-level": "stable" } }, - "/groups/{group_id}/orgs": { + "/orgs/{org_id}/container_images/{image_id}/relationships/image_target_refs": { "get": { - "description": "Get a paginated list of all the organizations belonging to the group.\nBy default, this endpoint returns the organizations in alphabetical order of their name.\n\n#### Required permissions\n\n- `View Groups (group.read)`\n\n- `View Organizations (group.org.list)`", - "operationId": "listOrgsInGroup", + "description": "List instances of image target references for a container image\n\n#### Required permissions\n\n- `View container images (org.container_image.read)`", + "operationId": "listImageTargetRefs", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "example": "f59045b3-f093-40c3-871d-a334ae30c568", + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/StartingAfter" + "$ref": "#/components/parameters/ImageId20231102" }, { - "$ref": "#/components/parameters/EndingBefore" + "$ref": "#/components/parameters/Version" }, { "$ref": "#/components/parameters/Limit" }, { - "$ref": "#/components/parameters/PathGroupId" - }, - { - "$ref": "#/components/parameters/QueryNameFilter" + "$ref": "#/components/parameters/StartingAfter" }, { - "$ref": "#/components/parameters/QuerySlugFilter" + "$ref": "#/components/parameters/EndingBefore" } ], "responses": { @@ -26375,11 +70310,10 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { "items": { - "$ref": "#/components/schemas/Org" + "$ref": "#/components/schemas/ImageTargetRef" }, "type": "array" }, @@ -26390,16 +70324,11 @@ "$ref": "#/components/schemas/PaginatedLinks" } }, - "required": [ - "jsonapi", - "data", - "links" - ], "type": "object" } } }, - "description": "A list of organizations in the group.", + "description": "Returns a list of image target references for a container image", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -26433,38 +70362,40 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "List all organizations in group", + "summary": "List instances of image target references for a container image", "tags": [ - "Orgs" + "ContainerImage" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-10-24~experimental", - "2023-12-14~beta", - "2024-02-28" + "2023-08-18~beta", + "2023-11-02" ], - "x-snyk-api-resource": "orgs", + "x-snyk-api-resource": "container_images", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-02-28", + "x-snyk-api-version": "2023-11-02", "x-stability-level": "stable" } }, - "/groups/{group_id}/policies": { - "get": { - "description": "Get all policies for the requested group\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `View Policies (group.policy.read)`", - "operationId": "listGroupPolicies", + "/orgs/{org_id}/container_import/{integration_id}/policy": { + "delete": { + "description": "Delete a container registry import policy\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", + "operationId": "deleteContainerRegistryImportPolicy", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Group ID", + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -26472,64 +70403,19 @@ } }, { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/GroupPolicyResponse" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "jsonapi", - "data" - ], - "type": "object" - } - } - }, - "description": "The group policies for the requested group", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } + "description": "Container Registry Integration ID", + "in": "path", + "name": "integration_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/204" }, "400": { "$ref": "#/components/responses/400" @@ -26542,83 +70428,100 @@ }, "404": { "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Get group level policies (Early Access)", + "summary": "Delete a container registry import policy", "tags": [ - "Policies" + "ContainerRegistryImportPolicy" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2023-10-11~experimental", + "2025-09-17" ], - "x-snyk-api-resource": "grouppolicies", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "import_policy", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2025-09-17", + "x-stability-level": "stable" }, - "post": { - "description": "Create one new group level policy.\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `Create Policies (group.policy.create)`", - "operationId": "createGroupPolicy", + "get": { + "description": "Get a container registry import policy\n\n#### Required permissions\n\n- `View integrations (org.integration.read)`", + "operationId": "getContainerRegistryImportPolicy", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Group ID", + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", "type": "string" } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateGroupPolicyPayload" - } + }, + { + "description": "Container Registry Integration ID", + "in": "path", + "name": "integration_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" } } - }, + ], "responses": { - "201": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/GroupPolicyResponse" + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" + }, + "id": { + "$ref": "#/components/schemas/IntegrationId" + }, + "type": { + "enum": [ + "container_registry_import_policy" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "data" - ], "type": "object" } } }, - "description": "A single policy is returned if it is successfully created.", + "description": "Gets a container registry import policy successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -26648,36 +70551,38 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Create a new group level policy (Early Access)", + "summary": "Get a container registry import policy", "tags": [ - "Policies" + "ContainerRegistryImportPolicy" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2023-10-11~experimental", + "2025-09-17" ], - "x-snyk-api-resource": "grouppolicies", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/groups/{group_id}/policies/{policy_id}": { - "delete": { - "description": "Delete an existing group-level policy.\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `Delete Policies (group.policy.delete)`", - "operationId": "deleteGroupPolicy", + "x-snyk-api-resource": "import_policy", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2025-09-17", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update a container registry import policy\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", + "operationId": "updateContainerRegistryImportPolicy", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Group ID", + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -26685,68 +70590,49 @@ } }, { - "$ref": "#/components/parameters/PolicyId" - } - ], - "responses": { - "204": { - "$ref": "#/components/responses/204" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Delete an group-level policy (Early Access)", - "tags": [ - "Policies" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "grouppolicies", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - }, - "patch": { - "description": "Update the group-level policy.\n\n*Group level Policy APIs Access Notice:* Access to our Group level Policy APIs is currently\nrestricted via \"use-group-policy-apis\" feature flag and will result in a 403 Forbidden error\nwithout the flag enabled. Please contact your account representative for eligibility requirements.\n\n#### Required permissions\n\n- `Edit Policies (group.policy.edit)`", - "operationId": "updateGroupPolicy", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Group ID", + "description": "Container Registry Integration ID", "in": "path", - "name": "group_id", + "name": "integration_id", "required": true, "schema": { "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/PolicyId" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/UpdateGroupPolicyPayload" + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" + }, + "id": { + "$ref": "#/components/schemas/IntegrationId" + }, + "type": { + "enum": [ + "container_registry_import_policy" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } } } @@ -26759,7 +70645,25 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/GroupPolicyResponse" + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" + }, + "id": { + "$ref": "#/components/schemas/IntegrationId" + }, + "type": { + "enum": [ + "container_registry_import_policy" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -26768,23 +70672,17 @@ "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "data" - ], "type": "object" } } }, - "description": "A single group policy is returned if it is successfully updated.", + "description": "Updated a container registry import policy successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, "location": { - "schema": { - "type": "string" - } + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" @@ -26817,31 +70715,36 @@ }, "409": { "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Update a group-level policy (Early Access)", + "summary": "Update a container registry import policy", "tags": [ - "Policies" + "ContainerRegistryImportPolicy" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2023-10-11~experimental", + "2025-09-17" ], - "x-snyk-api-resource": "grouppolicies", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/groups/{group_id}/service_accounts": { - "get": { - "description": "Get all service accounts for a group.\n\n#### Required permissions\n\n- `View service accounts (group.service_account.read)`", - "operationId": "getManyGroupServiceAccount", + "x-snyk-api-resource": "import_policy", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2025-09-17", + "x-stability-level": "stable" + }, + "post": { + "description": "Create a container registry import policy\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", + "operationId": "createContainerRegistryImportPolicy", "parameters": [ { - "description": "The ID of the Snyk Group that owns the service accounts.", + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -26849,68 +70752,90 @@ } }, { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/Version" + "description": "Container Registry Integration ID", + "in": "path", + "name": "integration_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" + }, + "type": { + "enum": [ + "container_registry_import_policy" + ], + "type": "string" + } + }, + "required": [ + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, "responses": { - "200": { + "201": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, "properties": { "data": { - "items": { - "$ref": "#/components/schemas/ServiceAccount" + "additionalProperties": false, + "description": "container registry import policy resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" + }, + "id": { + "$ref": "#/components/schemas/IntegrationId" + }, + "type": { + "enum": [ + "container_registry_import_policy" + ], + "type": "string" + } }, - "type": "array" + "required": [ + "type" + ], + "type": "object" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" - }, - "meta": { - "properties": { - "access_tokens": { - "properties": { - "max_active_tokens": { - "type": "integer" - }, - "max_expiry_days": { - "type": "integer" - } - }, - "required": [ - "max_active_tokens", - "max_expiry_days" - ], - "type": "object" - } - }, - "type": "object" + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "data", - "links" - ], "type": "object" } } }, - "description": "A list of service accounts is returned.", + "description": "Created a container registry import policy successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -26947,31 +70872,40 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get a list of group service accounts.", + "summary": "Create a container registry import policy", "tags": [ - "ServiceAccounts" + "ContainerRegistryImportPolicy" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2023-10-11~experimental", + "2025-09-17" ], - "x-snyk-api-resource": "service_accounts", + "x-snyk-api-resource": "import_policy", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", + "x-snyk-api-version": "2025-09-17", "x-stability-level": "stable" - }, + } + }, + "/orgs/{org_id}/container_import/{integration_id}/policy/dry_run": { "post": { - "description": "Create a service account for a group. The service account can be used to access the Snyk API.\n\n#### Required permissions\n\n- `Create service accounts (group.service_account.create)`", - "operationId": "createGroupServiceAccount", + "description": "Creates an asynchronous dry run job to test a container registry import policy\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", + "operationId": "createContainerRegistryImportPolicyDryRun", "parameters": [ { - "description": "The ID of the Snyk Group that is creating and owns the service account", + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -26979,68 +70913,30 @@ } }, { - "$ref": "#/components/parameters/Version" + "description": "Container Registry Integration ID", + "in": "path", + "name": "integration_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { "additionalProperties": false, "properties": { "attributes": { - "additionalProperties": false, - "properties": { - "access_token_expires_at": { - "description": "The expiry date of the access token. Required only when auth_type is access_token.", - "example": "2025-08-16T00:00:00Z", - "format": "date-time", - "type": "string" - }, - "access_token_ttl_seconds": { - "description": "The time, in seconds, that a generated oauth access token will be valid for. Defaults to 1 hour if unset. Only used when auth_type is one of the oauth_* variants.", - "maximum": 86400, - "minimum": 3600, - "type": "number" - }, - "auth_type": { - "description": "The authentication strategy for the service account:\n * api_key - Regular Snyk API Key.\n * oauth_client_secret - OAuth2 client_credentials grant, which returns a client secret that can be used to retrieve an oauth access token.\n * oauth_private_key_jwt - OAuth2 client_credentials grant, using private_key_jwt client_assertion as laid out in OIDC Connect Core 1.0, section 9.\n * access_token - Access tokens are long-lived, can be used more than once for increased flexibility, and have expiries for enhanced security.", - "enum": [ - "api_key", - "oauth_client_secret", - "oauth_private_key_jwt", - "access_token" - ], - "type": "string" - }, - "jwks_url": { - "description": "A JWKs URL hosting your public keys, used to verify signed JWT requests. Must be https. Required only when auth_type is oauth_private_key_jwt.", - "type": "string" - }, - "name": { - "description": "A human-friendly name for the service account.", - "type": "string" - }, - "role_id": { - "description": "The ID of the role which the created service account should use. Obtained in the Snyk UI, via \"Group Page\" -\u003e \"Settings\" -\u003e \"Member Roles\" -\u003e \"Create new Role\". Can be shared among multiple accounts.", - "format": "uuid", - "type": "string" - } - }, - "required": [ - "name", - "role_id", - "auth_type" - ], - "type": "object" + "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" }, "type": { - "description": "The Resource type.", "enum": [ - "service_account" + "container_registry_import_policy" ], "type": "string" } @@ -27058,42 +70954,207 @@ "type": "object" } } + } + }, + "responses": { + "202": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "description": "dry run job resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/DryRunJobCreationResponseAttributes" + }, + "id": { + "description": "The dry run job ID", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "dry_run_job" + ], + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Dry run job created successfully", + "headers": { + "content-location": { + "description": "A pointer to the newly created dry run job resource", + "required": true, + "schema": { + "format": "string", + "type": "string" + } + }, + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" }, - "required": true + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } }, + "summary": "Create a dry run job for a container registry import policy", + "tags": [ + "ContainerRegistryImportPolicy" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta", + "2025-09-17" + ], + "x-snyk-api-resource": "import_policy", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2025-09-17", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/container_import/{integration_id}/policy/dry_run/{job_id}": { + "get": { + "description": "Retrieves the status and results of a dry run job\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", + "operationId": "getDryRunJob", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Container Registry Integration ID", + "in": "path", + "name": "integration_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Dry run job ID", + "in": "path", + "name": "job_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], "responses": { - "201": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/ServiceAccount" + "additionalProperties": false, + "description": "dry run job resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/DryRunJobResponseAttributes" + }, + "id": { + "description": "The dry run job ID", + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "dry_run_job" + ], + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "data" - ], "type": "object" } } }, - "description": "A new service account has been created", + "description": "Dry run job retrieved successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -27117,6 +71178,9 @@ "401": { "$ref": "#/components/responses/401" }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { "$ref": "#/components/responses/404" }, @@ -27124,39 +71188,32 @@ "$ref": "#/components/responses/500" } }, - "summary": "Create a service account for a group.", + "summary": "Get a dry run job", "tags": [ - "ServiceAccounts" + "ContainerRegistryImportPolicy" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2025-09-17" ], - "x-snyk-api-resource": "service_accounts", + "x-snyk-api-resource": "import_policy", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", + "x-snyk-api-version": "2025-09-17", "x-stability-level": "stable" } }, - "/groups/{group_id}/service_accounts/{serviceaccount_id}": { - "delete": { - "description": "Permanently delete a group-level service account by its ID.\n\n#### Required permissions\n\n- `Delete service accounts (group.service_account.delete)`", - "operationId": "deleteOneGroupServiceAccount", + "/orgs/{org_id}/ecosystems/{ecosystem}/packages/{package_name}": { + "get": { + "description": "Get package metadata for a specific package from an ecosystem.\n\n**Important:** The security section of `package_health` refers to the `latest_version` of the package, not all versions. Since the `overall_rating` is computed from all health sections (including security), it is also influenced by the latest version's security data.\n\n**Supported Ecosystems:** npm, pypi, maven, nuget, golang\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getPackage", "parameters": [ { - "description": "The ID of the Snyk Group that owns the service account.", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "description": "The ID of the service account.", + "description": "Org ID", "in": "path", - "name": "serviceaccount_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -27164,19 +71221,68 @@ } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/Ecosystem" + }, + { + "$ref": "#/components/parameters/PackageName" } ], "responses": { - "204": { - "description": "Service account was successfully deleted.", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "description": "package resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/PackageAttributes" + }, + "id": { + "description": "Package identifier in PURL format", + "example": "pkg:npm/express", + "format": "uri", + "type": "string" + }, + "type": { + "description": "Resource type identifier", + "example": "package", + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "additionalProperties": false, + "properties": { + "self": { + "example": "https://api.snyk.io/rest/orgs/12345/ecosystems/npm/packages/express?version=2024-10-15", + "format": "uri", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + } + } + }, + "description": "Returns package metadata", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -27206,41 +71312,39 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Delete a group service account.", + "summary": "Get a package (Early Access)", "tags": [ - "ServiceAccounts" + "Package" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2024-10-15~beta" ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - }, + "x-snyk-api-resource": "packages", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/ecosystems/{ecosystem}/packages/{package_name}/versions/{package_version}": { "get": { - "description": "Get a group-level service account by its ID.\n\n#### Required permissions\n\n- `View service accounts (group.service_account.read)`", - "operationId": "getOneGroupServiceAccount", + "description": "Get package version metadata for a specific version of a package from an ecosystem.\n\n**Important:** The security section of `package_health` refers to the **specific version in the request**, not the latest version. Since the `overall_rating` is computed from all health sections (including security), it is also influenced by this version's security data.\n\n**Supported Ecosystems:** npm, pypi, maven, nuget, golang\n\n**Version Format:** Accepts standard semantic versioning formats (e.g., `1.2.3`, `v1.2.3`). **Note:** Golang commit hashes are NOT supported as version identifiers. Use tagged versions only.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getPackageVersion", "parameters": [ { - "description": "The ID of the Snyk Group that owns the service account.", - "in": "path", - "name": "group_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "description": "The ID of the service account.", + "description": "Org ID", "in": "path", - "name": "serviceaccount_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -27248,7 +71352,13 @@ } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/Ecosystem" + }, + { + "$ref": "#/components/parameters/PackageName" + }, + { + "$ref": "#/components/parameters/PackageVersion" } ], "responses": { @@ -27259,32 +71369,60 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/ServiceAccount" + "additionalProperties": false, + "description": "package version resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/PackageVersionAttributes" + }, + "id": { + "description": "Package version identifier in PURL format (e.g., pkg:npm/express@4.19.2)", + "example": "pkg:npm/express@4.19.2", + "format": "uri", + "type": "string" + }, + "package_version": { + "description": "The specific version string of this package", + "example": "4.19.2", + "type": "string" + }, + "type": { + "description": "Resource type identifier", + "example": "package_version", + "type": "string" + } + }, + "required": [ + "id", + "type", + "package_version" + ], + "type": "object" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "properties": { + "self": { + "example": "https://api.snyk.io/rest/orgs/12345/ecosystems/npm/packages/express/versions/4.19.2?version=2024-10-15", + "format": "uri", + "type": "string" + } + }, + "type": "object" } }, - "required": [ - "jsonapi", - "data", - "links" - ], "type": "object" } } }, - "description": "Service account is returned.", + "description": "Returns package version metadata", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -27314,31 +71452,159 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a package version (Early Access)", + "tags": [ + "Package Version" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "versions", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/export": { + "post": { + "description": "Create and start an export for an org\n\n#### Required permissions\n\n- `View Organization reports (org.report.read)`", + "operationId": "createExport", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/orgId" + }, + { + "$ref": "#/components/parameters/include_deleted" + }, + { + "$ref": "#/components/parameters/include_deactivated" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateOrgExport" + }, + "responses": { + "202": { + "$ref": "#/components/responses/CreateExport" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "429": { + "$ref": "#/components/responses/TooManyRequests" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get a group service account.", + "security": [ + { + "TokenAuth": [] + } + ], + "summary": "Start an export", "tags": [ - "ServiceAccounts" + "Export" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2024-10-15" ], - "x-snyk-api-resource": "service_accounts", + "x-snyk-api-resource": "export", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" - }, - "patch": { - "description": "Update the name of a group's service account by its ID.\n\n#### Required permissions\n\n- `Edit service accounts (group.service_account.edit)`", - "operationId": "updateGroupServiceAccount", + } + }, + "/orgs/{org_id}/export/{export_id}": { + "get": { + "description": "Get an export results\n\n#### Required permissions\n\n- `View Organization reports (org.report.read)`", + "operationId": "getExport", "parameters": [ { - "description": "The ID of the Snyk Group that owns the service account.", + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/orgId" + }, + { + "$ref": "#/components/parameters/exportId" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetExport" + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "security": [ + { + "TokenAuth": [] + } + ], + "summary": "Get export results", + "tags": [ + "Export" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "export", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/inventory/assets": { + "get": { + "description": "Retrieves a polymorphic list of all asset types for a given organization.\nThe group and tenant are resolved from the org_id.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listAssetsOrg", + "parameters": [ + { + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -27346,105 +71612,75 @@ } }, { - "description": "The ID of the service account.", - "in": "path", - "name": "serviceaccount_id", - "required": true, + "description": "The requested API version", + "in": "query", + "name": "version", "schema": { - "format": "uuid", + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "name": { - "description": "A human-friendly name for the service account. Must be unique within the group.", - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "id": { - "description": "The ID of the service account. Must match the id in the url path.", - "format": "uuid", - "type": "string" - }, - "type": { - "description": "The Resource type.", - "enum": [ - "service_account" - ], - "type": "string" - } - }, - "required": [ - "type", - "id", - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } + "$ref": "#/components/parameters/RsqlFilter" + }, + { + "description": "Comma-separated sort fields. Prefix with `-` for descending order.", + "example": "-created_at", + "in": "query", + "name": "sort", + "schema": { + "type": "string" } }, - "required": true - }, + { + "description": "Number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + }, + { + "$ref": "#/components/parameters/MetaCount" + } + ], "responses": { "200": { "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/ServiceAccount" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetListResponse" } } }, - "description": "Service account is returned.", + "description": "Successful response with a polymorphic list of assets", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -27471,36 +71707,31 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Update a group service account.", + "summary": "List or search all assets (synchronous) - Org scope (Early Access)", "tags": [ - "ServiceAccounts" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2024-10-15~beta" ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - } - }, - "/groups/{group_id}/service_accounts/{serviceaccount_id}/secrets": { - "post": { - "description": "Manage the client secret of a group service account by the service account ID.\n\n#### Required permissions\n\n- `Edit service accounts (group.service_account.edit)`", - "operationId": "updateServiceAccountSecret", + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Partially updates multiple assets within an org context.\nMaximum of 100 assets can be updated per request.\nThe operation is transactional - all updates succeed or all fail.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "updateAssetsBulkOrg", "parameters": [ { - "description": "The ID of the Snyk Group that owns the service account.", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -27508,107 +71739,33 @@ } }, { - "description": "The ID of the service account.", - "in": "path", - "name": "serviceaccount_id", - "required": true, + "description": "The requested API version", + "in": "query", + "name": "version", "schema": { - "format": "uuid", + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } - }, - { - "$ref": "#/components/parameters/Version" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "mode": { - "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated secret.\n * `create` - Add a new secret, preserving existing secrets. A maximum of to two secrets can exist at a time.\n * `delete` - Remove an existing secret by value. At least one secret must remain per service account.\n", - "enum": [ - "replace", - "create", - "delete" - ], - "type": "string" - }, - "secret": { - "description": "Secret to delete when using `delete` mode", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - "type": { - "description": "The Resource type.", - "enum": [ - "service_account" - ], - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" + "$ref": "#/components/schemas/AssetBulkPatchRequestBody" } } }, "required": true }, "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/ServiceAccount" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data" - ], - "type": "object" - } - } - }, - "description": "Service account client secret has been updated.", + "204": { + "description": "Assets updated successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -27642,37 +71799,80 @@ "$ref": "#/components/responses/500" } }, - "summary": "Manage a group service account's client secret.", + "summary": "Bulk update asset attributes - Org scope (Early Access)", "tags": [ - "ServiceAccounts" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2024-10-15~beta" ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/groups/{group_id}/settings/iac": { + "/orgs/{org_id}/inventory/assets/filters": { "get": { - "description": "Get the Infrastructure as Code Settings for a group.\n\n#### Required permissions\n\n- `View IaC settings (group.iac.settings.read)`", - "operationId": "getIacSettingsForGroup", + "description": "Returns a list of valid field names that can be used for filtering assets using RSQL.\nEach field includes its name, data type, and which asset types it applies to.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getFilterFieldsOrg", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the group whose Infrastructure as Code settings are requested", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", "type": "string" } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter the available filter fields", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } } ], "responses": { @@ -27680,28 +71880,11 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/GroupIacSettingsResponse" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/FilterFieldsResponse" } } }, - "description": "The Infrastructure as Code Settings of the group.", + "description": "List of available filter fields", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -27732,85 +71915,124 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get the Infrastructure as Code Settings for a group", + "summary": "Get available filter fields - Org scope (Early Access)", "tags": [ - "IacSettings" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2021-12-09" + "2024-10-15~beta" ], - "x-snyk-api-resource": "iac_settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2021-12-09", - "x-stability-level": "stable" - }, - "patch": { - "description": "Update the Infrastructure as Code Settings for a group.\n\n#### Required permissions\n\n- `Edit IaC settings (group.iac.settings.edit)`", - "operationId": "updateIacSettingsForGroup", + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/inventory/assets/filters/{filter_id}/values": { + "get": { + "description": "Returns a list of distinct values for a specific filter field.\nUseful for building autocomplete functionality in filter UIs.\n\nUse the UUID from the filter fields list endpoint to identify which field to query.\n\nFor object filter values, both the keys and values are returned.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getFilterValuesOrg", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The unique identifier of the organization", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "description": "The id of the group whose Infrastructure as Code settings are getting updated", + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "The UUID of the filter field to get values for (from the filter fields list endpoint)", + "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "in": "path", - "name": "group_id", + "name": "filter_id", "required": true, "schema": { "format": "uuid", "type": "string" } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/GroupIacSettingsRequest" - } - }, - "type": "object" - } + }, + { + "description": "Full text search term to filter the list of values. If keys_only is true, this will filter the keys of the object filter values. If key is provided, this will filter the value for the specific key of the object filter values.", + "example": "prod", + "in": "query", + "name": "q", + "schema": { + "maxLength": 100, + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Return only the keys of the object filter values", + "in": "query", + "name": "keys_only", + "schema": { + "type": "boolean" + } + }, + { + "description": "Return only the value for a specific key of the object filter values", + "in": "query", + "name": "key", + "schema": { + "type": "string" } } - }, + ], "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/GroupIacSettingsResponse" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/FilterValuesResponse" } } }, - "description": "The Infrastructure as Code Settings of the group were updated.", + "description": "List of filter values", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -27848,30 +72070,29 @@ "$ref": "#/components/responses/500" } }, - "summary": "Update the Infrastructure as Code Settings for a group", + "summary": "Get filter value suggestions (autocomplete) - Org scope (Early Access)", "tags": [ - "IacSettings" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2021-12-09" + "2024-10-15~beta" ], - "x-snyk-api-resource": "iac_settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2021-12-09", - "x-stability-level": "stable" + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/groups/{group_id}/settings/pull_request_template": { - "delete": { - "description": "Delete your groups pull request template. This means Snyk pull requests will start to use the default template for this group.\n\n#### Required permissions\n\n- `Edit Group settings (group.settings.edit)`", - "operationId": "deletePullRequestTemplate", + "/orgs/{org_id}/inventory/assets/groups": { + "get": { + "description": "Returns a list of valid group field names that can be used for grouping assets within an org context.\nCommon fields such as `class` and `org_id` (the Snyk organization that discovered the asset) apply to\nevery asset type; within a single org, grouping by `org_id` returns a single bucket.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getGroupFieldsOrg", "parameters": [ { - "description": "Snyk Group ID", - "example": "7626925e-4b0f-11ee-be56-0242ac120002", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -27879,69 +72100,49 @@ } }, { - "$ref": "#/components/parameters/Version" - } - ], - "responses": { - "204": { - "$ref": "#/components/responses/204" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Delete pull request template for group", - "tags": [ - "Pull Request Templates" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-10-13~beta", - "2024-05-08" - ], - "x-snyk-api-resource": "pull-request-templates", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-08", - "x-stability-level": "stable" - }, - "get": { - "description": "Get your groups pull request template\n\n#### Required permissions\n\n- `View Group settings (group.settings.read)`", - "operationId": "getPullRequestTemplate", - "parameters": [ - { - "description": "Snyk Group ID", - "example": "7626925e-4b0f-11ee-be56-0242ac120002", - "in": "path", - "name": "group_id", - "required": true, + "description": "The requested API version", + "in": "query", + "name": "version", "schema": { - "format": "uuid", + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, { - "$ref": "#/components/parameters/Version" + "description": "Comma-separated list of asset types to filter group fields", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } }, { - "$ref": "#/components/parameters/StartingAfter" + "description": "Maximum number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } }, { - "$ref": "#/components/parameters/EndingBefore" + "description": "Cursor for forward pagination", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } }, { - "$ref": "#/components/parameters/Limit" + "description": "Cursor for backward pagination", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } } ], "responses": { @@ -27949,47 +72150,15 @@ "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "additionalProperties": false, - "description": "Fetch a pull request template response", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PullRequestTemplateAttributes" - }, - "id": { - "$ref": "#/components/schemas/PullRequsetTemplateId" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "type": "object" + "$ref": "#/components/schemas/GroupFieldsResponse" } } }, - "description": "Fetch Pull Request Template for group.", + "description": "List of available group fields", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -28016,36 +72185,33 @@ "403": { "$ref": "#/components/responses/403" }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get pull request template for group", + "summary": "Get available group fields - Org scope (Early Access)", "tags": [ - "Pull Request Templates" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-10-13~beta", - "2024-05-08" + "2024-10-15~beta" ], - "x-snyk-api-resource": "pull-request-templates", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-08", - "x-stability-level": "stable" - }, - "post": { - "description": "Configures a group level pull request template that will be used on any org or project within that group\n\n#### Required permissions\n\n- `Edit Group settings (group.settings.edit)`", - "operationId": "createOrUpdatePullRequestTemplate", + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/inventory/assets/groups/{group_field_id}/values": { + "get": { + "description": "Returns aggregated values for a specific group field id, showing the count of assets\nfor each distinct value.\n\nUse the UUID from the group fields list endpoint to identify which field to query.\n\nGrouping by `org_id` buckets assets by the Snyk organization that discovered them:\none bucket per organization at group or tenant scope, and a single bucket at org scope.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getGroupValuesOrg", "parameters": [ { - "description": "Snyk Group ID", - "example": "7626925e-4b0f-11ee-be56-0242ac120002", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -28053,86 +72219,89 @@ } }, { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/PullRequestTemplateAttributes" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "type", - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "The UUID of the group field to get values for (from the group fields list endpoint)", + "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "in": "path", + "name": "group_field_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter the aggregation", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RsqlFilterGroupValues" + }, + { + "$ref": "#/components/parameters/SortGroupValues" + }, + { + "description": "Maximum number of group values to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" } }, - "required": true - }, + { + "description": "Cursor for forward pagination", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for backward pagination", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/MetaFieldsGroupValues" + }, + { + "$ref": "#/components/parameters/AggregateGroupValues" + } + ], "responses": { - "201": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "additionalProperties": false, - "description": "Create or update Pull Request Template response", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PullRequestTemplateAttributes" - }, - "id": { - "$ref": "#/components/schemas/PullRequsetTemplateId" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "type": "object" + "$ref": "#/components/schemas/GroupValuesResponse" } } }, - "description": "Pull Request Template created for group.", + "description": "List of group values with aggregated metadata", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -28166,30 +72335,29 @@ "$ref": "#/components/responses/500" } }, - "summary": "Create or update pull request template for group", + "summary": "Get group value aggregation - Org scope (Early Access)", "tags": [ - "Pull Request Templates" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-10-13~beta", - "2024-05-08" + "2024-10-15~beta" ], - "x-snyk-api-resource": "pull-request-templates", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-08", - "x-stability-level": "stable" + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/groups/{group_id}/sso_connections": { - "get": { - "description": "Returns a list of SSO connections for a group\n\n#### Required permissions\n\n- `View SSO settings (group.sso.read)`", - "operationId": "listGroupSsoConnections", + "/orgs/{org_id}/inventory/assets/searches": { + "post": { + "description": "Initiates an asynchronous search for assets within an org context.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "createAssetSearchOrg", "parameters": [ { - "description": "The ID of the group", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -28197,51 +72365,58 @@ } }, { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/Version" + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateSearchRequestBody" + } + } + } + }, "responses": { - "200": { + "302": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/SSOConnection" - }, - "type": "array" - }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" } }, - "required": [ - "jsonapi", - "data", - "links" - ], "type": "object" } } }, - "description": "List of SSO connections is returned", + "description": "Found - Redirects to search results endpoint", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "description": "URL to retrieve search results", + "schema": { + "format": "uri", + "type": "string" + } + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -28262,43 +72437,33 @@ "400": { "$ref": "#/components/responses/400" }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get all SSO connections for a group (Early Access)", + "summary": "Create an asset search (asynchronous) - Org scope (Early Access)", "tags": [ - "Groups" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-01-31~experimental", - "2023-01-30~beta" + "2024-10-15~beta" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "asset", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-01-30~beta", + "x-snyk-api-version": "2024-10-15~beta", "x-stability-level": "beta" } }, - "/groups/{group_id}/sso_connections/{sso_id}/users": { + "/orgs/{org_id}/inventory/assets/searches/{search_id}/results": { "get": { - "description": "Returns a list of users for a SSO connection\n\n#### Required permissions\n\n- `View SSO settings (group.sso.read)`\n\n- `View users (group.user.read)`", - "operationId": "listGroupSsoConnectionUsers", + "description": "Gets paginated results for a previously initiated asset search within an org context.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getAssetSearchResultsOrg", "parameters": [ { - "description": "The ID of the group", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -28306,19 +72471,55 @@ } }, { - "$ref": "#/components/parameters/SsoId" + "$ref": "#/components/parameters/SearchId" }, { - "$ref": "#/components/parameters/StartingAfter" + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } }, { - "$ref": "#/components/parameters/EndingBefore" + "description": "Sort order for results (e.g., -created_at for descending)", + "in": "query", + "name": "sort", + "schema": { + "type": "string" + } }, { - "$ref": "#/components/parameters/Limit" + "description": "Maximum number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } }, { - "$ref": "#/components/parameters/Version" + "description": "Cursor for forward pagination", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for backward pagination", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" } ], "responses": { @@ -28326,30 +72527,11 @@ "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/User" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/AssetListResponse" } } }, - "description": "List of users is returned", + "description": "Search results retrieved successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -28371,15 +72553,6 @@ } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { "$ref": "#/components/responses/404" }, @@ -28387,30 +72560,29 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get all users using a given SSO connection (Early Access)", + "summary": "Retrieve asset search results (asynchronous) - Org scope (Early Access)", "tags": [ - "Groups" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-01-31~experimental", - "2023-01-30~beta" + "2024-10-15~beta" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "asset", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-01-30~beta", + "x-snyk-api-version": "2024-10-15~beta", "x-stability-level": "beta" } }, - "/groups/{group_id}/sso_connections/{sso_id}/users/{user_id}": { - "delete": { - "description": "Deletes a user from a Group SSO connection\n\n#### Required permissions\n\n- `View SSO settings (group.sso.read)`\n\n- `Delete users (group.user.delete)`", - "operationId": "deleteUser", + "/orgs/{org_id}/inventory/assets/{asset_id}": { + "get": { + "description": "Retrieves a single asset by its unique identifier within an org context.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getAssetOrg", "parameters": [ { - "description": "The ID of the group", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -28418,18 +72590,57 @@ } }, { - "$ref": "#/components/parameters/SsoId" + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/UserId20230130" + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/SparseFieldsets" } ], "responses": { - "204": { - "description": "User is deleted from Group SSO connection", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/PolymorphicAssetData" + }, + "links": { + "properties": { + "self": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Asset retrieved successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -28467,30 +72678,27 @@ "$ref": "#/components/responses/500" } }, - "summary": "Delete a user from a Group SSO connection (Early Access)", + "summary": "Get a single asset by ID - Org scope (Early Access)", "tags": [ - "Groups" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-01-31~experimental", - "2023-01-30~beta" + "2024-10-15~beta" ], - "x-snyk-api-resource": "groups", + "x-snyk-api-resource": "asset", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-01-30~beta", + "x-snyk-api-version": "2024-10-15~beta", "x-stability-level": "beta" - } - }, - "/groups/{group_id}/users/{id}": { + }, "patch": { - "description": "Update a user's membership of the group.\n\nTo remove a user's membership, provide 'null' as the membership parameter (see example).\n\nAt present, only removing memberships is supported by this endpoint. To update a user's group membership, please use\nthe UI or legacy API.\n\n#### Required permissions\n\n- `View Groups (group.read)`\n\n- `View users (group.user.read)`\n\n- `Remove users (group.user.remove)`", - "operationId": "updateUser", + "description": "Partially updates an asset's attributes within an org context.\nSupports updating class, labels (add/remove), and tags (add/remove).\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "updateAssetOrg", "parameters": [ { - "description": "The id of the group", + "description": "The unique identifier of the organization", "in": "path", - "name": "group_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -28498,9 +72706,9 @@ } }, { - "description": "The id of the user", + "description": "The unique identifier of the asset", "in": "path", - "name": "id", + "name": "asset_id", "required": true, "schema": { "format": "uuid", @@ -28508,117 +72716,62 @@ } }, { - "$ref": "#/components/parameters/Version" + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.api+json": { - "example": { - "data": { - "attributes": { - "membership": null - }, - "id": "55a348e2-c3ad-4bbc-b40e-9b232d1f4122", - "type": "user" - } - }, "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/UserPatchRequestBody" - } - }, - "type": "object" + "$ref": "#/components/schemas/AssetPatchRequestBody" } } }, "required": true }, - "responses": { - "204": { - "$ref": "#/components/responses/204" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update a user's role in a group (Early Access)", - "tags": [ - "Users" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-10-06~beta" - ], - "x-snyk-api-resource": "users", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2022-10-06~beta", - "x-stability-level": "beta" - } - }, - "/learn/catalog": { - "get": { - "description": "List Snyk Learn's catalog resources", - "operationId": "listLearnCatalog", - "parameters": [ - { - "$ref": "#/components/parameters/ApiVersion" - }, - { - "$ref": "#/components/parameters/ContentSource" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - } - ], "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "items": { - "$ref": "#/components/schemas/EducationResourceExtended" - }, - "type": "array" + "$ref": "#/components/schemas/PolymorphicAssetData" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "$ref": "#/components/schemas/JsonApiVersion" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "description": "Self-referencing link", + "properties": { + "self": { + "description": "Link to the current resource", + "format": "uri", + "type": "string" + } + }, + "required": [ + "self" + ], + "type": "object" } }, "required": [ - "data", - "links", - "jsonapi" + "data" ], "type": "object" } } }, - "description": "Returns a list of catalog resources", + "description": "Asset updated successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -28640,6 +72793,15 @@ } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { "$ref": "#/components/responses/404" }, @@ -28647,100 +72809,136 @@ "$ref": "#/components/responses/500" } }, - "summary": "List Snyk Learn's resources (Early Access)", + "summary": "Update asset attributes - Org scope (Early Access)", "tags": [ - "Catalog Resource" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-05-13~experimental", - "2024-10-13~beta", "2024-10-15~beta" ], - "x-snyk-api-resource": "catalog", + "x-snyk-api-resource": "asset", "x-snyk-api-stability": "beta", "x-snyk-api-version": "2024-10-15~beta", - "x-snyk-documentation": { - "category": "learn" - }, "x-stability-level": "beta" } }, - "/openapi": { + "/orgs/{org_id}/inventory/assets/{asset_id}/relationships/projects": { "get": { - "description": "List available versions of OpenAPI specification", - "operationId": "listAPIVersions", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "items": { - "type": "string" - }, - "type": "array" - } - } - }, - "description": "List of available versions is returned", - "headers": { - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - } + "description": "Retrieves a paginated list of Snyk projects linked to this asset with full attributes.\nReturns the `id`, `type`, and `attributes` of each related project.\nScoped to the specified organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listAssetProjectsOrg", + "parameters": [ + { + "description": "The unique identifier of the organization", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" } }, - "400": { - "$ref": "#/components/responses/400" + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, - "401": { - "$ref": "#/components/responses/401" + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } }, - "404": { - "$ref": "#/components/responses/404" + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "tags": [ - "OpenAPI" - ] - } - }, - "/openapi/{version}": { - "get": { - "description": "Get OpenAPI specification effective at version.", - "operationId": "getAPIVersion", - "parameters": [ { - "description": "The requested version of the API", - "in": "path", - "name": "version", - "required": true, + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Filter projects by canonical status.\n- `with`: Returns all projects (canonical attribute is populated).\n- `only`: Returns only canonical projects (those used for vulnerability counts).\n- `none`: Returns only non-canonical projects.\nWhen omitted, returns all projects without canonical filtering.\n", + "in": "query", + "name": "canonical", + "schema": { + "enum": [ + "with", + "only", + "none" + ], + "type": "string" + } + }, + { + "description": "Filter projects by target ID. When provided, returns only projects that belong to\nthe specified target. When omitted, returns projects from all targets.\n", + "in": "query", + "name": "target_id", "schema": { + "format": "uuid", "type": "string" } + }, + { + "$ref": "#/components/parameters/ProjectSortParam" } ], "responses": { "200": { "content": { - "application/json": { + "application/vnd.api+json": { "schema": { - "type": "object" + "$ref": "#/components/schemas/ProjectRelationshipListResponse" } } }, - "description": "OpenAPI specification matching requested version is returned", + "description": "Successfully retrieved linked projects", "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, "snyk-version-requested": { "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" } } }, @@ -28750,6 +72948,9 @@ "401": { "$ref": "#/components/responses/401" }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { "$ref": "#/components/responses/404" }, @@ -28757,76 +72958,80 @@ "$ref": "#/components/responses/500" } }, + "summary": "List projects for an asset (org scope) (Early Access)", "tags": [ - "OpenAPI" - ] + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "project", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/orgs": { + "/orgs/{org_id}/inventory/assets/{asset_id}/relationships/targets": { "get": { - "description": "Get a paginated list of organizations you have access to.", - "operationId": "listOrgs", + "description": "Retrieves a paginated list of Snyk targets linked to this asset with full attributes.\nReturns the `id`, `type`, and `attributes` of each related target.\nScoped to the specified organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listAssetTargetsOrg", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" + "description": "The unique identifier of the organization", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "description": "If set, only return organizations within the specified group", - "in": "query", - "name": "group_id", + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, "schema": { "format": "uuid", "type": "string" } }, { - "description": "If true, only return organizations that are not part of a group.", + "description": "The requested API version", "in": "query", - "name": "is_personal", + "name": "version", "schema": { - "type": "boolean" + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" } }, { - "description": "Only return orgs whose slug exactly matches this value.", + "description": "Cursor for fetching the next page of results", "in": "query", - "name": "slug", + "name": "starting_after", "schema": { - "maxLength": 100, - "pattern": "^[\\w.-]+$", "type": "string" } }, { - "description": "Only return orgs whose name contains this value.", + "description": "Cursor for fetching the previous page of results", "in": "query", - "name": "name", + "name": "ending_before", "schema": { - "maxLength": 100, "type": "string" } }, { - "description": "Expand the specified related resources in the response to include their attributes.", + "description": "Maximum number of results to return per page", "in": "query", - "name": "expand", + "name": "limit", "schema": { - "items": { - "enum": [ - "member_role" - ], - "type": "string" - }, - "type": "array" + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" } } ], @@ -28835,31 +73040,11 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/OrgWithRelationships" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/TargetRelationshipListResponse" } } }, - "description": "A list of organizations you have access to.", + "description": "Successfully retrieved linked targets", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -28897,55 +73082,46 @@ "$ref": "#/components/responses/500" } }, - "summary": "List accessible organizations", + "summary": "List targets for an asset (org scope) (Early Access)", "tags": [ - "Orgs" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-06~experimental", - "2022-12-15~beta", - "2023-05-29", - "2024-02-28" + "2024-10-15~beta" ], - "x-snyk-api-resource": "orgs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-02-28", - "x-stability-level": "stable" + "x-snyk-api-resource": "target", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/orgs/{org_id}": { + "/orgs/{org_id}/invites": { "get": { - "description": "Get the full details of an organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getOrg", + "description": "List pending user invitations to an organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View users (org.user.read)`", + "operationId": "listOrgInvitation", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Unique identifier for org", + "description": "The id of the org the user is being invited to", "in": "path", "name": "org_id", "required": true, "schema": { - "example": "b667f176-df52-4b0a-9954-117af6b05ab7", "format": "uuid", "type": "string" } }, { - "description": "Expand the specified related resources in the response to include their attributes.", - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "tenant" - ], - "type": "string" - }, - "type": "array" - } + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" } ], "responses": { @@ -28953,22 +73129,31 @@ "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/Org20230529" + "items": { + "$ref": "#/components/schemas/OrgInvitation" + }, + "type": "array" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Returns an instance of an organization", + "description": "List of pending invitations to an organization.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -29002,70 +73187,49 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get organization", + "summary": "List pending user invitations to an organization.", "tags": [ - "Orgs" + "Invites" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-06~experimental", - "2022-12-15~beta", - "2023-05-29" + "2022-11-14" ], - "x-snyk-api-resource": "orgs", + "x-snyk-api-resource": "org_invitations", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-05-29", + "x-snyk-api-version": "2022-11-14", "x-stability-level": "stable" }, - "patch": { - "description": "Update the details of an organization\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", - "operationId": "updateOrg", + "post": { + "description": "Invite a user to an organization with a role.\n\n#### Required permissions\n\n- `Invite users (org.user.invite)`", + "operationId": "createOrgInvitation", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/PathOrgId" + "description": "The id of the org the user is being invited to", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/OrgUpdateAttributes" - }, - "id": { - "description": "The ID of the resource.", - "format": "uuid", - "type": "string" - }, - "type": { - "description": "The type of the resource.", - "enum": [ - "org" - ], - "example": "org", - "type": "string" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" + "$ref": "#/components/schemas/OrgInvitationPostData" } }, "required": [ @@ -29077,56 +73241,40 @@ } }, "responses": { - "200": { + "201": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "org resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/OrgAttributes" - }, - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/OrgRelationships" - }, - "type": { - "enum": [ - "org" - ], - "example": "org", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" + "$ref": "#/components/schemas/OrgInvitation20240621" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data" + ], "type": "object" } } }, - "description": "Instance of org is updated", + "description": "A new organization invitation has been created", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "schema": { + "type": "string" + } + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -29144,6 +73292,68 @@ } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Invite a user to an organization", + "tags": [ + "Invites" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-06-01", + "2023-04-28", + "2024-06-21" + ], + "x-snyk-api-resource": "org_invitations", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-06-21", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/invites/{invite_id}": { + "delete": { + "description": "Cancel a pending user invitations to an organization.\n\n#### Required permissions\n\n- `Invite users (org.user.invite)`", + "operationId": "deleteOrgInvitation", + "parameters": [ + { + "description": "The id of the org the user is being invited to", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The id of the pending invite to cancel", + "in": "path", + "name": "invite_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { "204": { "$ref": "#/components/responses/204" }, @@ -29159,83 +73369,255 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Update organization", + "summary": "Cancel a pending user invitations to an organization.", "tags": [ - "Orgs" + "Invites" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-06~experimental", - "2022-12-15~beta", - "2023-05-29", - "2024-02-28" + "2022-11-14" ], - "x-snyk-api-resource": "orgs", + "x-snyk-api-resource": "org_invitations", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-02-28", + "x-snyk-api-version": "2022-11-14", "x-stability-level": "stable" } }, - "/orgs/{org_id}/ai_bom_jobs/{job_id}": { + "/orgs/{org_id}/issues": { "get": { - "description": "Returns the status of an AI-BOM job. The job status is returned in the response body. If the job is completed the response status code will be 303, redirecting to the getAiBom endpoint.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getAiBomJob", + "description": "Get a list of an organization's issues.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `View Project history (org.project.snapshot.read)`", + "operationId": "listOrgIssues", "parameters": [ { - "description": "The requested version of the endpoint to process the request", - "example": "2024-10-15", - "in": "query", - "name": "version", + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", "required": true, "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "example": "4a18d42f-0706-4ad0-b127-24078731fbed", + "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/OrgIdParam" + "$ref": "#/components/parameters/ScanItemId" }, { - "$ref": "#/components/parameters/JobIdParam" + "$ref": "#/components/parameters/ScanItemType" + }, + { + "$ref": "#/components/parameters/Type" + }, + { + "description": "A filter to select issues updated before this date.", + "in": "query", + "name": "updated_before", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "A filter to select issues updated after this date.", + "in": "query", + "name": "updated_after", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "A filter to select issues created before this date.", + "in": "query", + "name": "created_before", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "A filter to select issues created after this date.", + "in": "query", + "name": "created_after", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EffectiveSeverityLevel" + }, + { + "$ref": "#/components/parameters/Status" + }, + { + "$ref": "#/components/parameters/Ignored" + }, + { + "$ref": "#/components/parameters/IncludeCodeFlows" } ], "responses": { "200": { + "$ref": "#/components/responses/ListIssues200" + }, + "401": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetAiBomResponseJobBody" + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" } } }, - "description": "Successful API response with a single resource", + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, - "retry-after": { - "description": "How long the client should wait before retrying (in seconds). retry-after:0 means you can retry immediately", - "example": "10", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", "schema": { + "format": "date-time", "type": "string" } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -29250,8 +73632,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -29259,8 +73641,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -29268,52 +73650,156 @@ } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, - "303": { + "403": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/JobData" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "Redirect to another resource after async processing.", + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "description": "The location of the ai_bom resource", - "required": true, + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", "schema": { + "format": "date-time", "type": "string" } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -29328,8 +73814,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -29337,8 +73823,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -29346,7 +73832,12 @@ } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, @@ -29397,58 +73888,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -29523,10 +73962,10 @@ } } }, - "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -29534,7 +73973,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -29542,7 +73981,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -29557,8 +73996,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -29566,8 +74005,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -29631,58 +74070,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -29760,7 +74147,7 @@ "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -29768,7 +74155,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -29776,7 +74163,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -29791,8 +74178,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -29800,8 +74187,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -29819,115 +74206,51 @@ } } }, - "summary": "Get an AI-BOM job status (Early Access)", + "summary": "Get issues by org ID", "tags": [ - "AiBom" + "Issues" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2023-03-10~experimental", + "2023-09-29~beta", + "2024-01-23" ], - "x-snyk-api-resource": "ai_boms", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "issues", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-01-23", + "x-stability-level": "stable" } }, - "/orgs/{org_id}/ai_boms": { - "post": { - "description": "Triggers the creation of a new AI-BOM. The AI-BOM will be created in a background job. Users should query the background job status by using the getAiBomJob endpoint (/orgs/{org_id}/ai_bom_jobs/{job_id}). The response will contain a content-location header pointing to the getAiBomJob endpoint.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "createAiBom", + "/orgs/{org_id}/issues/{issue_id}": { + "get": { + "description": "Get an issue\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `View Project history (org.project.snapshot.read)`", + "operationId": "getOrgIssueByIssueID", "parameters": [ { - "description": "The requested version of the endpoint to process the request", - "example": "2024-10-15", - "in": "query", - "name": "version", + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", "required": true, "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "example": "4a18d42f-0706-4ad0-b127-24078731fbed", + "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/OrgIdParam" + "$ref": "#/components/parameters/PathIssueId20240123" + }, + { + "$ref": "#/components/parameters/IncludeCodeFlows" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateAiBomRequestBody" - } - } - } - }, "responses": { - "202": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateAiBomResponseBody" - } - } - }, - "description": "The request has been accepted for processing, but processing has not yet completed.", - "headers": { - "content-location": { - "description": "The content-location header points to the status endpoint (/orgs/{org_id}/ai_bom_jobs/{job_id}", - "required": true, - "schema": { - "format": "string", - "type": "string" - } - }, - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } + "200": { + "$ref": "#/components/responses/GetIssue20020240123" }, "400": { "content": { @@ -29976,58 +74299,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -30105,7 +74376,7 @@ "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -30113,7 +74384,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -30121,7 +74392,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -30136,8 +74407,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -30145,8 +74416,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -30163,7 +74434,7 @@ } } }, - "404": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -30210,58 +74481,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -30336,10 +74555,10 @@ } } }, - "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -30347,7 +74566,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -30355,7 +74574,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -30370,8 +74589,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -30379,8 +74598,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -30397,7 +74616,7 @@ } } }, - "500": { + "403": { "content": { "application/vnd.api+json": { "schema": { @@ -30444,58 +74663,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -30570,10 +74737,10 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -30581,7 +74748,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -30589,7 +74756,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -30604,8 +74771,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -30613,8 +74780,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -30631,70 +74798,147 @@ } } }, - "503": { - "$ref": "#/components/responses/503" - } - }, - "summary": "Create a new AI-BOM (Early Access)", - "tags": [ - "AiBom" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "ai_boms", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/ai_boms/{ai_bom_id}": { - "get": { - "description": "Get a AI-BOM once it's job has finished\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getAiBom", - "parameters": [ - { - "description": "The requested version of the endpoint to process the request", - "example": "2024-10-15", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/OrgIdParam" - }, - { - "$ref": "#/components/parameters/AiBomIdParam" - } - ], - "responses": { - "200": { + "404": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetAiBomResponseBody" + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" } } }, - "description": "Successful API response with a single resource", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "example": "2021-07-01T00:00:00Z", + "schema": { + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "schema": { + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -30709,8 +74953,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -30718,8 +74962,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -30727,11 +74971,16 @@ } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, - "404": { + "409": { "content": { "application/vnd.api+json": { "schema": { @@ -30778,58 +75027,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -30904,10 +75101,10 @@ } } }, - "description": "Not Found: The resource being operated on could not be found or you do not have permission to access it.", + "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -30915,7 +75112,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -30923,7 +75120,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -30938,8 +75135,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -30947,8 +75144,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -31012,58 +75209,6 @@ "format": "uuid", "type": "string" }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrence of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, "meta": { "additionalProperties": true, "example": { @@ -31141,7 +75286,7 @@ "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { - "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "example": "2021-07-01T00:00:00Z", "schema": { "format": "date-time", @@ -31149,7 +75294,7 @@ } }, "snyk-request-id": { - "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { "format": "uuid", @@ -31157,7 +75302,7 @@ } }, "snyk-version-lifecycle-stage": { - "description": "A header containing the version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { "enum": [ "wip", @@ -31172,8 +75317,8 @@ } }, "snyk-version-requested": { - "description": "A header containing the version of the endpoint requested by the caller.", - "example": "2024-10-15", + "description": "The version of the endpoint requested by the caller.", + "example": "2021-06-04", "schema": { "description": "Requested API version", "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", @@ -31181,8 +75326,8 @@ } }, "snyk-version-served": { - "description": "A header containing the version of the endpoint that was served by the API.", - "example": "2024-10-15", + "description": "The version of the endpoint that was served by the API.", + "example": "2021-06-04", "schema": { "description": "Resolved API version", "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", @@ -31198,392 +75343,119 @@ } } } - } - }, - "summary": "Get an AI-BOM. (Early Access)", - "tags": [ - "AiBom" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "ai_boms", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/app_bots": { - "get": { - "deprecated": true, - "description": "Get a list of app bots authorized to an organization. Deprecated, use /orgs/{org_id}/apps/installs instead.\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", - "operationId": "getAppBots", - "parameters": [ - { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "app" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Organization ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/AppBot" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" - } - } - }, - "description": "A list of app bots authorized to the specified organization", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" - } - }, - "summary": "Get a list of app bots authorized to an organization.", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-03-11" - ], - "x-snyk-api-resource": "app_bots", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/app_bots/{bot_id}": { - "delete": { - "deprecated": true, - "description": "Revoke app bot authorization. Deprecated, use /orgs/{org_id}/apps/installs/{install_id} instead.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "deleteAppBot", - "parameters": [ - { - "description": "The ID of the app bot", - "in": "path", - "name": "bot_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Organization ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "The app bot has been deauthorized", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" }, - "500": { - "$ref": "#/components/responses/500__0" + "501": { + "$ref": "#/components/responses/501" } }, - "summary": "Revoke app bot authorization", + "summary": "Get an issue", "tags": [ - "Apps" + "Issues" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2024-01-23" ], - "x-snyk-api-resource": "app_bots", + "x-snyk-api-resource": "issues", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", + "x-snyk-api-version": "2024-01-23", "x-stability-level": "stable" } }, - "/orgs/{org_id}/apps": { - "get": { - "deprecated": true, - "description": "Get a list of Snyk Apps created by an Organization Deprecated, use /orgs/{org_id}/apps/creations instead.\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", - "operationId": "getApps", - "parameters": [ - { - "$ref": "#/components/parameters/OrgId__0" - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/AppData20220311" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" - } - } - }, - "description": "A list of apps created by the specified organization", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } + "/orgs/{org_id}/jobs/export/{export_id}": { + "get": { + "description": "Get an export job status\n\n#### Required permissions\n\n- `View Organization reports (org.report.read)`", + "operationId": "getExportJobStatus", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/orgId" + }, + { + "$ref": "#/components/parameters/exportId" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetExportJob" }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Get a list of Snyk Apps created by an Organization", + "security": [ + { + "TokenAuth": [] + } + ], + "summary": "Get export status", "tags": [ - "Apps" + "Export" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2024-10-15" ], - "x-snyk-api-resource": "apps", + "x-snyk-api-resource": "export", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" - }, - "post": { + } + }, + "/orgs/{org_id}/learn/assignments": { + "delete": { "deprecated": true, - "description": "Create a new app for an organization. Deprecated, use /orgs/{org_id}/apps/creations instead.\n\n#### Required permissions\n\n- `Create Apps (org.app.create)`", - "operationId": "createApp", + "description": "Allows an admin to delete multiple assignments within their organization.\n\n**Note**: Assignments that are part of a Learning Program cannot be deleted through this endpoint.\n\n#### Required permissions\n\n- `Delete assignments (org.learn_assignment.delete)`", + "operationId": "deleteOrgAssignments", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/ApiVersion" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/AppPostRequest20220311" + "$ref": "#/components/schemas/DeleteAssignmentsRequest" } } }, - "description": "app to be created" + "required": true }, "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/AppPostResponse20220311" - } - } - }, - "description": "Created Snyk App successfully", + "204": { + "description": "Assignments were successfully deleted.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -31602,49 +75474,81 @@ } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/400" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { - "$ref": "#/components/responses/409" + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument" + } + } + }, + "description": "Conflict - The assignment cannot be deleted because it is part of a Learning Program.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Create a new app for an organization.", + "summary": "Bulk deletion of assignments in an organization (Early Access)", "tags": [ - "Apps" + "Learn assignment" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2024-10-13~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/apps/creations": { + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-13~beta", + "x-snyk-deprecated-by": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" + }, "get": { - "description": "Get a list of Snyk Apps created by an Organization\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", - "operationId": "getOrgApps", + "description": "Allows an admin to obtain a comprehensive list of all assignments within their organization.\n\n#### Required permissions\n\n- `View Organization assignments (org.learn_assignment.read)`", + "operationId": "listOrgAssignments", "parameters": [ { - "$ref": "#/components/parameters/OrgId__0" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/ApiVersion" }, { "$ref": "#/components/parameters/StartingAfter" @@ -31661,11 +75565,10 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { "items": { - "$ref": "#/components/schemas/AppData" + "$ref": "#/components/schemas/LessonAssignmentDecoratedResource" }, "type": "array" }, @@ -31677,15 +75580,15 @@ } }, "required": [ - "data", "jsonapi", - "links" + "links", + "data" ], "type": "object" } } }, - "description": "A list of apps created by the specified organization", + "description": "A list of assignments was successfully retrieved.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -31708,78 +75611,95 @@ } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/400" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Get a list of Snyk Apps created by an Organization", + "summary": "Retrieve a list of assignments for an organization (Early Access)", "tags": [ - "Apps" + "Learn assignment" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03" + "2024-10-13~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-13~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" }, - "post": { - "description": "Create a new Snyk App for an organization\n\n#### Required permissions\n\n- `Create Apps (org.app.create)`", - "operationId": "createOrgApp", + "patch": { + "description": "Allows an admin to update the due date for existing assignments within their organization.\n\n#### Required permissions\n\n- `Edit assignments (org.learn_assignment.edit)`", + "operationId": "updateOrgAssignments", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/ApiVersion" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/AppPostRequest" + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdateAssignmentsPayload" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } } }, - "description": "Snyk App details for app to be created." + "required": true }, "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/AppPostResponse" - } - } - }, - "description": "Created Snyk App successfully.", + "204": { + "description": "Assignments due date was successfully updated.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -31798,66 +75718,72 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Create a new Snyk App for an organization", + "summary": "Update due date for assignments in an organization. (Early Access)", "tags": [ - "Apps" + "Learn assignment" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03" + "2024-10-15~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/apps/creations/{app_id}": { - "delete": { - "description": "Delete a Snyk App by app ID\n\n#### Required permissions\n\n- `Delete Apps (org.app.delete)`", - "operationId": "deleteAppByID", + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" + }, + "post": { + "description": "Allows an admin to create assignments in bulk for all or a subset of users within their organization.\n\n#### Required permissions\n\n- `Create assignments (org.learn_assignment.create)`", + "operationId": "createOrgAssignments", "parameters": [ { - "$ref": "#/components/parameters/OrgId__0" - }, - { - "$ref": "#/components/parameters/AppId" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/ApiVersion" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateAssignmentsPayload" + } + } + }, + "required": true + }, "responses": { "204": { - "description": "The app has been deleted", + "description": "Assignments were successfully created.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -31876,74 +75802,68 @@ } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/400" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Delete a Snyk App by app ID", + "summary": "Bulk creation of assignments for users in an organization. (Early Access)", "tags": [ - "Apps" + "Learn assignment" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03" + "2024-10-14~experimental", + "2024-10-15~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" - }, - "get": { - "description": "Get a Snyk App by app ID\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", - "operationId": "getAppByID", + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/learn/assignments/bulk_delete": { + "post": { + "description": "Allows an admin to delete multiple assignments within their organization.\n\n**Note**: Assignments that are part of a Learning Program cannot be deleted through this endpoint.\n\n#### Required permissions\n\n- `Delete assignments (org.learn_assignment.delete)`", + "operationId": "deleteOrgAssignmentsBulk", "parameters": [ { - "$ref": "#/components/parameters/OrgId__0" - }, - { - "$ref": "#/components/parameters/AppId" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/ApiVersion" } ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppData" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" - } + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/DeleteOrgAssignmentsBulkRequest" } - }, - "description": "Attributes of the requested Snyk App.", + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Assignments were successfully deleted.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -31966,83 +75886,125 @@ } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/400" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { - "$ref": "#/components/responses/409" + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ErrorDocument" + } + } + }, + "description": "Conflict - The assignment cannot be deleted because it is part of a Learning Program.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Get a Snyk App by app ID", + "summary": "Bulk deletion of assignments in an organization (Early Access)", "tags": [ - "Apps" + "Learn assignment" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03" + "2024-10-15~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" - }, - "patch": { - "description": "Update app creation attributes with App ID\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", - "operationId": "updateAppCreationByID", + "x-snyk-api-resource": "assignments", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/learn/progress/catalog": { + "get": { + "description": "Retrieves aggregated counts of users' lesson or learning path statuses (completed, in progress, todo) across all catalog resources for an organization.\n\n#### Required permissions\n\n- `View Organization Snyk Learn Reports (org.learn_report.read)`", + "operationId": "getCatalogProgress", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/ApiVersion" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Filter by the learn catalog resource type", + "in": "query", + "name": "type", + "schema": { + "default": "lesson", + "enum": [ + "learning_path", + "lesson" + ], + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Title" }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/Cwes" }, { - "$ref": "#/components/parameters/AppId" + "$ref": "#/components/parameters/Cves" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/AppPatchRequest" - } - } - } - }, "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppData" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" + "$ref": "#/components/schemas/CatalogProgressResponse" } } }, - "description": "Attributes of the updated Snyk App.", + "description": "Organization reporting users overview", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -32065,129 +76027,110 @@ } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/400" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Update app creation attributes such as name, redirect URIs, and access token time to live using the App ID", + "summary": "Get collective learning progress (Early Access)", "tags": [ - "Apps" + "Learn progress" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03" + "2024-10-15~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" + "x-snyk-api-resource": "progress", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" } }, - "/orgs/{org_id}/apps/creations/{app_id}/secrets": { - "post": { - "description": "Manage client secret for a Snyk App\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", - "operationId": "manageAppCreationSecret", + "/orgs/{org_id}/learn/progress/users": { + "get": { + "description": "Retrieves detailed learning progress status per user, including completion dates and history for each catalog resource.\n\n#### Required permissions\n\n- `View Organization Snyk Learn Reports (org.learn_report.read)`", + "operationId": "getUsersProgress", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The unique identifier of the organization.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/ApiVersion" }, { - "$ref": "#/components/parameters/AppId" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "mode": { - "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", - "enum": [ - "replace", - "create", - "delete" - ], - "type": "string" - }, - "secret": { - "description": "Secret to delete when using `delete` mode", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - "type": { - "enum": [ - "app" - ], - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Filter by the learn catalog resource type", + "in": "query", + "name": "type", + "schema": { + "default": "lesson", + "enum": [ + "learning_path", + "lesson" + ], + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Title" + }, + { + "$ref": "#/components/parameters/Titles" + }, + { + "description": "Filter by progress status of the resources", + "in": "query", + "name": "status", + "schema": { + "enum": [ + "completed", + "inProgress" + ], + "type": "string" } + }, + { + "$ref": "#/components/parameters/Emails" + }, + { + "$ref": "#/components/parameters/CompletionInterval" } - }, + ], "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppDataWithSecret" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" + "$ref": "#/components/schemas/UsersProgressResponse" } } }, - "description": "Secret has been updated.", + "description": "Organization reporting users overview", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -32210,62 +76153,42 @@ } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/400" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Manage client secret for a Snyk App", + "summary": "Get individual user learning progress (Early Access)", "tags": [ - "Apps" + "Learn progress" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03" + "2024-10-15~beta" ], - "x-snyk-api-resource": "apps", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" + "x-snyk-api-resource": "progress", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-snyk-documentation": { + "category": "learn" + }, + "x-stability-level": "beta" } }, - "/orgs/{org_id}/apps/installs": { + "/orgs/{org_id}/memberships": { "get": { - "description": "Get a list of Snyk Apps installed for an Organization\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", - "operationId": "getAppInstallsForOrg", + "description": "Returns all memberships of the org\n\n#### Required permissions\n\n- `View Organization Memberships (org.membership.read)`", + "operationId": "listOrgMemberships", "parameters": [ { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "app" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Organization ID", + "description": "The ID of the org", "in": "path", "name": "org_id", "required": true, @@ -32274,9 +76197,6 @@ "type": "string" } }, - { - "$ref": "#/components/parameters/Version" - }, { "$ref": "#/components/parameters/StartingAfter" }, @@ -32285,6 +76205,50 @@ }, { "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Which column to sort by.", + "in": "query", + "name": "sort_by", + "schema": { + "enum": [ + "username", + "user_display_name", + "email", + "login_method", + "role" + ], + "type": "string" + } + }, + { + "description": "Order in which results are returned.", + "example": "ASC", + "in": "query", + "name": "sort_order", + "schema": { + "default": "ASC", + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EmailFilter" + }, + { + "$ref": "#/components/parameters/UserIdFilter" + }, + { + "$ref": "#/components/parameters/UsernameFilter" + }, + { + "$ref": "#/components/parameters/RoleFilter" } ], "responses": { @@ -32292,31 +76256,27 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { - "items": { - "$ref": "#/components/schemas/AppInstallData" - }, - "type": "array" + "$ref": "#/components/schemas/OrgMembershipResponseData" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } }, "required": [ - "data", "jsonapi", + "data", "links" ], "type": "object" } } }, - "description": "A list of apps installed for the specified organization.", + "description": "List of org memberships is returned", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -32339,152 +76299,89 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Get a list of Snyk Apps installed for an Organization", + "summary": "Get all memberships of the org", "tags": [ - "Apps" + "Orgs" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "2024-05-09~experimental", + "2024-08-25" ], - "x-snyk-api-resource": "app_installs", + "x-snyk-api-resource": "orgs", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", + "x-snyk-api-version": "2024-08-25", "x-stability-level": "stable" }, "post": { - "description": "Install a Snyk App to this organization, the Snyk App must use unattended authentication e.g. client credentials\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "createOrgAppInstall", + "description": "Create a org membership for a user with role\n\n#### Required permissions\n\n- `Add Organization Memberships (org.membership.add)`", + "operationId": "createOrgMembership", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The ID of the org", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/Version" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "properties": { - "type": { - "enum": [ - "app_install" - ], - "example": "app_install", - "type": "string" - } - }, - "type": "object" - }, - "relationships": { - "additionalProperties": false, - "properties": { - "app": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "id": { - "$ref": "#/components/schemas/Uuid" - }, - "type": { - "enum": [ - "app" - ], - "example": "app", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - }, - "required": [ - "app" - ], - "type": "object" - } - }, - "required": [ - "data", - "relationships" - ], - "type": "object" + "$ref": "#/components/schemas/CreateOrgMembershipRequestBody20240825" } } - }, - "description": "App Install to be created" + } }, "responses": { "201": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/AppInstallWithClient" + "$ref": "#/components/schemas/OrgMembership" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } }, - "required": [ - "data", - "jsonapi", - "links" - ], "type": "object" } } }, - "description": "The newly created app install.", + "description": "Membership for the user is created on the org", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, "location": { - "schema": { - "type": "string" - } + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" @@ -32504,67 +76401,68 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Install a Snyk App for an Organization", + "summary": "Create a org membership for a user with role", "tags": [ - "Apps" + "Orgs" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "2024-05-09~experimental", + "2024-08-25" ], - "x-snyk-api-resource": "app_installs", + "x-snyk-api-resource": "orgs", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", + "x-snyk-api-version": "2024-08-25", "x-stability-level": "stable" } }, - "/orgs/{org_id}/apps/installs/{install_id}": { + "/orgs/{org_id}/memberships/{membership_id}": { "delete": { - "description": "Revoke app authorization for a Snyk organization with install ID\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "deleteAppOrgInstallById", + "description": "Remove a user's membership of the group.\n\n#### Required permissions\n\n- `Delete Organization Memberships (org.membership.delete)`", + "operationId": "deleteOrgMembership", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The id of the org", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/OrgMembershipId" }, { - "$ref": "#/components/parameters/InstallId" + "$ref": "#/components/parameters/Version" } ], "responses": { "204": { - "description": "The Snyk App install is revoked, with no content (no errors).", + "description": "Org membership for the user was successfully deleted.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -32583,98 +76481,63 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Revoke app authorization for a Snyk organization with install ID", + "summary": "Remove user's org membership", "tags": [ - "Apps" + "Orgs" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "2024-06-06~experimental", + "2024-08-25" ], - "x-snyk-api-resource": "app_installs", + "x-snyk-api-resource": "org_memberships", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", + "x-snyk-api-version": "2024-08-25", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/apps/installs/{install_id}/secrets": { - "post": { - "description": "Manage client secret for non-interactive Snyk App installations\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", - "operationId": "updateOrgAppInstallSecret", + }, + "patch": { + "description": "Update a org membership for a user with role\n\n#### Required permissions\n\n- `Edit Organization Memberships (org.membership.edit)`", + "operationId": "updateOrgMembership", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The id of the org", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/OrgMembershipId" }, { - "$ref": "#/components/parameters/InstallId" + "$ref": "#/components/parameters/Version" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "additionalProperties": false, - "properties": { - "mode": { - "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", - "enum": [ - "replace", - "create", - "delete" - ], - "type": "string" - }, - "secret": { - "description": "Secret to delete when using `delete` mode", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - "type": { - "enum": [ - "app" - ], - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" + "$ref": "#/components/schemas/UpdateOrgMembershipRequestBody20240825" } }, "required": [ @@ -32686,36 +76549,12 @@ } }, "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppInstallDataWithSecret" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" - } - } - }, - "description": "Secret has been updated.", + "204": { + "description": "The Membership is updated", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -32734,67 +76573,84 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Manage client secret for non-interactive Snyk App installations", + "summary": "Update a org membership for a user with role", "tags": [ - "Apps" + "Orgs" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" + "2024-06-06~experimental", + "2024-08-25" ], - "x-snyk-api-resource": "app_installs", + "x-snyk-api-resource": "org_memberships", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", + "x-snyk-api-version": "2024-08-25", "x-stability-level": "stable" } }, - "/orgs/{org_id}/apps/{client_id}": { - "delete": { - "deprecated": true, - "description": "Delete an app by app id. Deprecated, use /orgs/{org_id}/apps/creations/{app_id} instead.\n\n#### Required permissions\n\n- `Delete Apps (org.app.delete)`", - "operationId": "deleteApp", + "/orgs/{org_id}/packages/issues": { + "post": { + "description": "This endpoint is currently restricted and is not available to all customers. Query issues for a batch of packages identified by Package URL (purl). Only direct vulnerabilities are returned; transitive vulnerabilities (from dependencies) are not included as they can vary depending on the context.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listIssuesForManyPurls", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/OrgId__0" - }, - { - "$ref": "#/components/parameters/ClientId" + "description": "Unique identifier for an organization", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/BulkPackageUrlsRequestBody" + } + } + }, + "required": true + }, "responses": { - "204": { - "description": "The app has been deleted", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/IssuesWithPurlsResponse" + } + } + }, + "description": "Returns an array of issues with the purl identifier of the package that caused them", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, "location": { - "schema": { - "type": "string" - } + "$ref": "#/components/headers/Location" }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" @@ -32814,51 +76670,82 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Delete an app", + "summary": "List issues for a given set of packages (Currently not available to all customers)", "tags": [ - "Apps" + "Issues" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2023-01-04~experimental", + "2023-03-29~beta", + "2023-04-17", + "2023-08-21", + "2024-06-26", + "2025-11-05" ], - "x-snyk-api-resource": "apps", + "x-snyk-api-resource": "issues", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", + "x-snyk-api-version": "2025-11-05", "x-stability-level": "stable" - }, + } + }, + "/orgs/{org_id}/packages/{purl}/issues": { "get": { - "deprecated": true, - "description": "Get an App by client id. Deprecated, use /orgs/{org_id}/apps/creations/{app_id} instead.\n\n#### Required permissions\n\n- `View Apps (org.app.read)`", - "operationId": "getApp", + "description": "Query issues for a specific package version identified by Package URL (purl). Snyk returns only direct vulnerabilities. Transitive vulnerabilities (from dependencies) are not returned because they can vary depending on context. For Maven packages, you can optionally include a checksum qualifier in the PURL to request checksum validation. The response will include metadata indicating whether the provided checksum matches Snyk's records. Vulnerabilities are always returned regardless of checksum match status; the validation metadata allows clients to interpret results appropriately.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getIssuesPerPurl", "parameters": [ { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/ClientId" + "$ref": "#/components/parameters/PackageUrl" }, { - "$ref": "#/components/parameters/Version" + "description": "Unique identifier for an organization", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Specify the number of results to skip before returning results. Must be greater than or equal to 0. Default is 0.", + "in": "query", + "name": "offset", + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "Specify the number of results to return. Must be greater than 0 and less than 1000. Default is 1000.", + "in": "query", + "name": "limit", + "schema": { + "maximum": 1000, + "minimum": 1, + "type": "integer" + } } ], "responses": { @@ -32866,23 +76753,11 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/AppData20220311" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" + "$ref": "#/components/schemas/IssuesResponse" } } }, - "description": "Attributes of the requested Snyk App.", + "description": "Returns an array of issues", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -32905,62 +76780,110 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" + "$ref": "#/components/responses/404" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Get an app by client id", + "summary": "List issues for a package", "tags": [ - "Apps" + "Issues" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2022-06-29~beta", + "2022-09-15", + "2024-06-26", + "2025-11-05" ], - "x-snyk-api-resource": "apps", + "x-snyk-api-resource": "issues", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", + "x-snyk-api-version": "2025-11-05", "x-stability-level": "stable" - }, - "patch": { - "deprecated": true, - "description": "Update app attributes. Deprecated, use /orgs/{org_id}/apps/creations/{app_id} instead.\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", - "operationId": "updateApp", + } + }, + "/orgs/{org_id}/policies": { + "get": { + "description": "Get all policies for the requested organisation.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `View Ignores (org.project.ignore.read)`", + "operationId": "getOrgPolicies", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/OrgId__0" + "$ref": "#/components/parameters/StartingAfter" }, { - "$ref": "#/components/parameters/ClientId" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/AppPatchRequest20220311" - } + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Search" + }, + { + "$ref": "#/components/parameters/OrderBy" + }, + { + "$ref": "#/components/parameters/OrderDirection" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Review" + }, + { + "description": "Select only policies with an expiry strictly before the given time.", + "in": "query", + "name": "expires_before", + "schema": { + "example": "2024-03-16T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + { + "description": "Select only policies with an expiry strictly past the given time.", + "in": "query", + "name": "expires_after", + "schema": { + "example": "2024-03-16T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + { + "description": "Select only policies that never expire.", + "in": "query", + "name": "expires_never", + "schema": { + "example": true, + "type": "boolean" } } - }, + ], "responses": { "200": { "content": { @@ -32969,20 +76892,27 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/AppData20220311" + "items": { + "$ref": "#/components/schemas/PolicyResponse" + }, + "type": "array" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/PaginatedLinks" } }, + "required": [ + "jsonapi", + "data" + ], "type": "object" } } }, - "description": "Attributes of the updated Snyk App.", + "description": "The policies for the requested organisation.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -33005,92 +76935,68 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/404" } }, - "summary": "Update app attributes that are name, redirect URIs, and access token time to live", + "summary": "Get org-level policies", "tags": [ - "Apps" + "Policies" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2024-10-15", + "2026-03-25" ], - "x-snyk-api-resource": "apps", + "x-snyk-api-resource": "policies", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", + "x-snyk-api-version": "2026-03-25", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/apps/{client_id}/secrets": { + }, "post": { - "deprecated": true, - "description": "Manage client secrets for an app. Deprecated, use /orgs/{org_id}/apps/creations/{app_id}/secrets instead.\n\n#### Required permissions\n\n- `Edit Apps (org.app.edit)`", - "operationId": "manageSecrets", + "description": "Create a new org-level policy.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `Create Ignores (org.project.ignore.create)`", + "operationId": "createOrgPolicy", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/OrgId__0" - }, - { - "$ref": "#/components/parameters/ClientId" + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "mode": { - "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated\nsecret\n * `create` - Add a new secret, preserving existing secrets\n * `delete` - Remove an existing secret by value\n", - "enum": [ - "replace", - "create", - "delete" - ], - "type": "string" - }, - "secret": { - "description": "Secret to delete when using `delete` mode", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" + "$ref": "#/components/schemas/CreatePolicyPayload" } } } }, "responses": { - "200": { + "201": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/AppDataWithSecret20220311" + "$ref": "#/components/schemas/PolicyResponse" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -33099,15 +77005,24 @@ "$ref": "#/components/schemas/SelfLink" } }, + "required": [ + "jsonapi", + "data" + ], "type": "object" } } }, - "description": "Secrets have been updated.", + "description": "A single policy is returned if it is successfully created.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "schema": { + "type": "string" + } + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -33126,76 +77041,111 @@ } }, "400": { - "$ref": "#/components/responses/400__0" + "$ref": "#/components/responses/400" }, "401": { - "$ref": "#/components/responses/401__0" + "$ref": "#/components/responses/401" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" + "$ref": "#/components/responses/404" }, "500": { - "$ref": "#/components/responses/500__0" + "$ref": "#/components/responses/500" } }, - "summary": "Manage client secrets for an app.", + "summary": "Create a new org-level policy", "tags": [ - "Apps" + "Policies" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-11" + "2024-10-15", + "2026-03-25" ], - "x-snyk-api-resource": "apps", + "x-snyk-api-resource": "policies", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-snyk-sunset-eligible": "2024-07-17", + "x-snyk-api-version": "2026-03-25", "x-stability-level": "stable" } }, - "/orgs/{org_id}/audit_logs/search": { - "get": { - "description": "Search audit logs for an Organization. \"api.access\" events are omitted from results unless explicitly requested using the events parameter. Supported event types:\n - api.access\n - org.app_bot.create\n - org.app.create\n - org.app.delete\n - org.app.edit\n - org.cloud_config.settings.edit\n - org.collection.create\n - org.collection.delete\n - org.collection.edit\n - org.create\n - org.delete\n - org.edit\n - org.ignore_policy.edit\n - org.integration.create\n - org.integration.delete\n - org.integration.edit\n - org.integration.settings.edit\n - org.language_settings.edit\n - org.notification_settings.edit\n - org.org_source.create\n - org.org_source.delete\n - org.org_source.edit\n - org.policy.create\n - org.policy.edit\n - org.policy.delete\n - org.project_filter.create\n - org.project_filter.delete\n - org.project.add\n - org.project.attributes.edit\n - org.project.delete\n - org.project.edit\n - org.project.fix_pr.auto_open\n - org.project.fix_pr.manual_open\n - org.project.ignore.create\n - org.project.ignore.delete\n - org.project.ignore.edit\n - org.project.monitor\n - org.project.pr_check.edit\n - org.project.remove\n - org.project.settings.delete\n - org.project.settings.edit\n - org.project.stop_monitor\n - org.project.tag.add\n - org.project.tag.remove\n - org.project.test\n - org.request_access_settings.edit\n - org.sast_settings.edit\n - org.service_account.create\n - org.service_account.delete\n - org.service_account.edit\n - org.settings.feature_flag.edit\n - org.target.create\n - org.target.delete\n - org.user.add\n - org.user.invite\n - org.user.invite.accept\n - org.user.invite.revoke\n - org.user.invite_link.accept\n - org.user.invite_link.create\n - org.user.invite_link.revoke\n - org.user.leave\n - org.user.provision.accept\n - org.user.provision.create\n - org.user.provision.delete\n - org.user.remove\n - org.user.role.create\n - org.user.role.delete\n - org.user.role.details.edit\n - org.user.role.edit\n - org.user.role.permissions.edit\n - org.webhook.add\n - org.webhook.delete\n - user.org.notification_settings.edit\n\n#### Required permissions\n\n- `View audit logs (org.audit_log.read)`", - "operationId": "listOrgAuditLogs", + "/orgs/{org_id}/policies/{policy_id}": { + "delete": { + "description": "Delete an existing org-level policy.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `Remove Ignores (org.project.ignore.delete)`", + "operationId": "deleteOrgPolicy", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/OrgId" - }, - { - "$ref": "#/components/parameters/Cursor" + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/From" + "$ref": "#/components/parameters/PolicyId" + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/204" }, - { - "$ref": "#/components/parameters/To" + "400": { + "$ref": "#/components/responses/400" }, - { - "$ref": "#/components/parameters/Size" + "401": { + "$ref": "#/components/responses/401" }, - { - "$ref": "#/components/parameters/SortOrder" + "403": { + "$ref": "#/components/responses/403" }, - { - "$ref": "#/components/parameters/UserId" + "404": { + "$ref": "#/components/responses/404" }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete an org-level policy", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15", + "2026-03-25" + ], + "x-snyk-api-resource": "policies", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2026-03-25", + "x-stability-level": "stable" + }, + "get": { + "description": "Get a specific org-level policy based on its ID.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `View Ignores (org.project.ignore.read)`", + "operationId": "getOrgPolicy", + "parameters": [ { - "$ref": "#/components/parameters/ProjectId" + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/Events" + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/ExcludeEvents" + "$ref": "#/components/parameters/PolicyId" } ], "responses": { @@ -33206,7 +77156,7 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/AuditLogSearch" + "$ref": "#/components/schemas/PolicyResponse" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -33223,16 +77173,11 @@ } } }, - "description": "Organization Audit Logs.", + "description": "The requested policy.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -33261,31 +77206,29 @@ }, "404": { "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Search Organization audit logs.", + "summary": "Get an org-level policy", "tags": [ - "Audit Logs" + "Policies" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-11", - "2024-04-29" + "2024-10-15", + "2026-03-25" ], - "x-snyk-api-resource": "audit-logs", + "x-snyk-api-resource": "policies", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-04-29", + "x-snyk-api-version": "2026-03-25", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/brokers/connections": { - "get": { - "description": "List all Broker connections integrated with a given org\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "listBrokerConnectionsForOrg", + }, + "patch": { + "description": "Update the org-level policy. \n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `Edit Ignores (org.project.ignore.edit)`", + "operationId": "updateOrgPolicy", "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, { "description": "Org ID", "in": "path", @@ -33297,1079 +77240,912 @@ } }, { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/parameters/PolicyId" } ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ListBrokerConnectionsSummaryResponse" - } - } - }, - "description": "Returns the list of Broker connections by org ID", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdatePolicyPayload" } } - }, - "400": { + } + }, + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/PolicyResponse" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, "required": [ "jsonapi", - "errors" + "data" ], "type": "object" } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "A single policy is returned if it is successfully updated.", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", "type": "string" } }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, "401": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + } + }, + "summary": "Update an org-level policy", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15", + "2026-03-25" + ], + "x-snyk-api-resource": "policies", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2026-03-25", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/policies/{policy_id}/events": { + "get": { + "description": "Retrieve the event history for the given policy.\n\n*Org level Policy APIs Access Notice:* Access to our Org level Policy APIs is currently\nrestricted via \"snykCodeConsistentIgnores\" and \"ignoreApprovalWorkflow\" feature flags\nand will result in a 403 Forbidden error without the flag enabled. Please contact your\naccount representative for eligibility requirements.\n\n#### Required permissions\n\n- `View Ignores (org.project.ignore.read)`", + "operationId": "getOrgPolicyEvents", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/PolicyId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/PolicyEventResponse" }, - "minItems": 1, "type": "array" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } }, "required": [ "jsonapi", - "errors" + "data" ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "The requested policy.", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" + "$ref": "#/components/responses/404" + } + }, + "summary": "List org policy events (Early Access)", + "tags": [ + "Policies" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-13~beta" + ], + "x-snyk-api-resource": "policyevents", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-13~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/projects": { + "get": { + "description": "List all Projects for an Org.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", + "operationId": "listOrgProjects", + "parameters": [ + { + "description": "The ID of the org that the projects belong to.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Return projects that belong to the provided targets", + "in": "query", + "name": "target_id", + "schema": { + "items": { + "format": "uuid", + "type": "string" + }, + "type": "array" + } + }, + { + "description": "Return projects that match the provided target reference", + "in": "query", + "name": "target_reference", + "schema": { + "type": "string" + } + }, + { + "description": "Return projects that match the provided target file", + "in": "query", + "name": "target_file", + "schema": { + "type": "string" + } + }, + { + "description": "Return projects that match the provided target runtime", + "in": "query", + "name": "target_runtime", + "schema": { + "type": "string" + } + }, + { + "description": "The collection count.", + "in": "query", + "name": "meta_count", + "schema": { + "enum": [ + "only" + ], + "type": "string" + } + }, + { + "description": "Return projects that match the provided IDs.", + "explode": false, + "in": "query", + "name": "ids", + "schema": { + "items": { + "format": "uuid", + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match the provided names.", + "explode": false, + "in": "query", + "name": "names", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects with names starting with the specified prefix.", + "explode": false, + "in": "query", + "name": "names_start_with", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match the provided origins.", + "explode": false, + "in": "query", + "name": "origins", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match the provided types.", + "explode": false, + "in": "query", + "name": "types", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "target" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Include a summary count for the issues found in the most recent scan of this project", + "in": "query", + "name": "meta.latest_issue_counts", + "schema": { + "type": "boolean" + } + }, + { + "description": "Include the total number of dependencies found in the most recent scan of this project", + "in": "query", + "name": "meta.latest_dependency_total", + "schema": { + "type": "boolean" + } + }, + { + "description": "Filter projects uploaded and monitored before this date (encoded value)", + "example": "2021-05-29T09:50:54.014Z", + "in": "query", + "name": "cli_monitored_before", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "Filter projects uploaded and monitored after this date (encoded value)", + "example": "2021-05-29T09:50:54.014Z", + "in": "query", + "name": "cli_monitored_after", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "description": "Return projects that match the provided importing user public ids.", + "explode": false, + "in": "query", + "name": "importing_user_public_id", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match all the provided tags", + "example": [ + "key1:value1", + "key2:value2" + ], + "explode": false, + "in": "query", + "name": "tags", + "schema": { + "items": { + "pattern": "^[a-zA-Z0-9_-]+:[:/?#@\u0026+=%a-zA-Z0-9_.~-]+$", + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match all the provided business_criticality value", + "explode": false, + "in": "query", + "name": "business_criticality", + "schema": { + "items": { + "enum": [ + "critical", + "high", + "medium", + "low" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match all the provided environment values", + "explode": false, + "in": "query", + "name": "environment", + "schema": { + "items": { + "enum": [ + "frontend", + "backend", + "internal", + "external", + "mobile", + "saas", + "onprem", + "hosted", + "distributed" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return projects that match all the provided lifecycle values", + "explode": false, + "in": "query", + "name": "lifecycle", + "schema": { + "items": { + "enum": [ + "production", + "development", + "sandbox" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ProjectAttributes" }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" + "id": { + "description": "Resource ID.", + "format": "uuid", + "type": "string" }, - "source": { + "meta": { "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", + "cli_monitored_at": { + "description": "The date that the project was last uploaded and monitored using cli.", + "example": "2021-05-29T09:50:54.014Z", + "format": "date-time", + "nullable": true, "type": "string" }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" + "latest_dependency_total": { + "$ref": "#/components/schemas/LatestDependencyTotal" + }, + "latest_issue_counts": { + "$ref": "#/components/schemas/LatestIssueCounts" } }, "type": "object" }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" + "relationships": { + "$ref": "#/components/schemas/ProjectRelationships" }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", + "type": { + "description": "The Resource type.", + "example": "project", "type": "string" } }, "required": [ - "status", - "detail" + "id", + "type", + "attributes" ], "type": "object" }, - "minItems": 1, "type": "array" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + }, + "meta": { "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" + "count": { + "minimum": 0, + "type": "number" } }, - "required": [ - "version" - ], "type": "object" } }, "required": [ "jsonapi", - "errors" + "links" ], "type": "object" } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "A list of projects is returned for the targeted org", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List all Projects for an Org with the given Org ID.", + "tags": [ + "Projects" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2021-06-04~beta", + "2022-08-12~experimental", + "2022-12-21~experimental", + "2023-02-15", + "2023-08-28", + "2023-09-11", + "2023-11-06", + "2024-05-31" + ], + "x-snyk-api-resource": "projects", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/projects/{project_id}": { + "delete": { + "description": "Delete one project in the organization by project ID.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `Remove Projects (org.project.delete)`", + "operationId": "deleteOrgProject", + "parameters": [ + { + "description": "The ID of the org to which the project belongs to.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the project.", + "in": "path", + "name": "project_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "204": { + "description": "The project has been deleted", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete project by project ID.", + "tags": [ + "Projects" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-11-06", + "2024-05-31" + ], + "x-snyk-api-resource": "projects", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + }, + "get": { + "description": "Get one project of the organization by project ID.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", + "operationId": "getOrgProject", + "parameters": [ + { + "description": "The ID of the org to which the project belongs to.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The ID of the project.", + "in": "path", + "name": "project_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "target" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Include a summary count for the issues found in the most recent scan of this project", + "in": "query", + "name": "meta.latest_issue_counts", + "schema": { + "type": "boolean" + } + }, + { + "description": "Include the total number of dependencies found in the most recent scan of this project", + "in": "query", + "name": "meta.latest_dependency_total", + "schema": { + "type": "boolean" + } + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { + "data": { "additionalProperties": false, - "example": { - "version": "1.0" - }, "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "attributes": { + "$ref": "#/components/schemas/ProjectAttributes" + }, + "id": { + "description": "The Resource ID.", + "format": "uuid", + "type": "string" + }, + "meta": { + "additionalProperties": false, + "properties": { + "cli_monitored_at": { + "description": "The date that the project was last uploaded and monitored using cli.", + "example": "2021-05-29T09:50:54.014Z", + "format": "date-time", + "nullable": true, + "type": "string" + }, + "latest_dependency_total": { + "$ref": "#/components/schemas/LatestDependencyTotal" + }, + "latest_issue_counts": { + "$ref": "#/components/schemas/LatestIssueCounts" + } + }, + "type": "object" + }, + "relationships": { + "$ref": "#/components/schemas/ProjectRelationships" + }, + "type": { + "description": "The Resource type.", + "example": "project", "type": "string" } }, "required": [ - "version" + "id", + "type", + "attributes" ], "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" } }, "required": [ "jsonapi", - "errors" + "data", + "links" ], "type": "object" } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "description": "A project is returned for the targeted org", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "List Broker connections for a given organization", + "summary": "Get project by project ID.", "tags": [ - "BrokerConnections" + "Projects" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" + "2022-02-01~experimental", + "2022-08-12~experimental", + "2022-12-21~experimental", + "2023-02-15", + "2023-08-28", + "2023-09-11", + "2023-11-06", + "2024-05-31" ], - "x-snyk-api-resource": "connections", + "x-snyk-api-resource": "projects", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, + "x-snyk-api-version": "2024-05-31", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/cloud/environments": { - "get": { - "description": "List environments for an organization\n\n#### Required permissions\n\n- `View environments (org.cloud_environments.read)`", - "operationId": "listEnvironments", + }, + "patch": { + "description": "Updates one project of the organization by project ID.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `Edit Projects (org.project.edit)`", + "operationId": "updateOrgProject", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "The ID of the Org the project belongs to.", "in": "path", "name": "org_id", "required": true, @@ -34379,94 +78155,229 @@ } }, { - "$ref": "#/components/parameters/CreatedAfter" + "description": "The ID of the project to patch.", + "in": "path", + "name": "project_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/CreatedBefore" + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", + "schema": { + "items": { + "enum": [ + "target" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/PatchProjectRequest" + } + } }, - { - "$ref": "#/components/parameters/UpdatedAfter" + "description": "The project attributes to be updated." + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/ProjectAttributes" + }, + "id": { + "description": "The Resource ID.", + "example": "331ede0a-de94-456f-b788-166caeca58bf", + "format": "uuid", + "type": "string" + }, + "links": { + "$ref": "#/components/schemas/Links" + }, + "meta": { + "additionalProperties": false, + "properties": { + "cli_monitored_at": { + "description": "The date that the project was last uploaded and monitored using cli.", + "example": "2021-05-29T09:50:54.014Z", + "format": "date-time", + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, + "relationships": { + "$ref": "#/components/schemas/ProjectRelationships" + }, + "type": { + "description": "The Resource type.", + "example": "project", + "type": "string" + } + }, + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A project is updated for the targeted org", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, - { - "$ref": "#/components/parameters/UpdatedBefore" + "400": { + "$ref": "#/components/responses/400" }, - { - "$ref": "#/components/parameters/NameInQuery" + "401": { + "$ref": "#/components/responses/401" }, - { - "$ref": "#/components/parameters/KindInQuery" + "403": { + "$ref": "#/components/responses/403" }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Updates project by project ID.", + "tags": [ + "Projects" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-12-21~experimental", + "2023-02-15", + "2023-08-28", + "2023-09-11", + "2023-11-06", + "2024-05-31" + ], + "x-snyk-api-resource": "projects", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-05-31", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/projects/{project_id}/sbom": { + "get": { + "description": "This endpoint lets you retrieve the SBOM document of a software project.\nIt supports the following formats:\n* CycloneDX version 1.6 in JSON (set `format` to `cyclonedx1.6+json`).\n* CycloneDX version 1.6 in XML (set `format` to `cyclonedx1.6+xml`).\n* CycloneDX version 1.5 in JSON (set `format` to `cyclonedx1.5+json`).\n* CycloneDX version 1.5 in XML (set `format` to `cyclonedx1.5+xml`).\n* CycloneDX version 1.4 in JSON (set `format` to `cyclonedx1.4+json`).\n* CycloneDX version 1.4 in XML (set `format` to `cyclonedx1.4+xml`).\n* SPDX version 2.3 in JSON (set `format` to `spdx2.3+json`).\n\nBy default it will respond with an empty JSON:API response.\n\n#### Required permissions\n\n- `View Project history (org.project.snapshot.read)`", + "operationId": "getSbom", + "parameters": [ { - "$ref": "#/components/parameters/StatusInQuery" + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/IdInQuery" + "description": "Unique identifier for an organization", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "description": "Filter environments by project ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", - "in": "query", + "description": "Unique identifier for a project", + "in": "path", "name": "project_id", + "required": true, "schema": { "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/StartingAfter" + "$ref": "#/components/parameters/Format" }, { - "$ref": "#/components/parameters/EndingBefore" + "$ref": "#/components/parameters/Exclude" }, { - "$ref": "#/components/parameters/Limit" + "$ref": "#/components/parameters/GoModuleLevel" } ], "responses": { "200": { "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SbomDocument" + } + }, "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "items": { - "properties": { - "attributes": { - "$ref": "#/components/schemas/EnvironmentAttributes" - }, - "id": { - "description": "Environment ID", - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/EnvironmentRelationships" - }, - "type": { - "$ref": "#/components/schemas/EnvironmentType" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "type": "object" + "$ref": "#/components/schemas/SbomResponse" + } + }, + "application/vnd.cyclonedx+json": { + "schema": { + "$ref": "#/components/schemas/SbomDocument" + } + }, + "application/vnd.cyclonedx+xml": { + "schema": { + "$ref": "#/components/schemas/SbomDocument" } } }, - "description": "Returns a list of environments", + "description": "Returns the SBOM document of a project", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -34507,31 +78418,35 @@ "$ref": "#/components/responses/500" } }, - "summary": "List Environments (Early Access)", + "summary": "Get a project’s SBOM document", "tags": [ - "Cloud" + "SBOM" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta", - "2023-10-19~beta" + "2022-03-31~experimental", + "2022-12-06~beta", + "2023-03-20", + "2024-03-12~experimental", + "2024-08-15~beta", + "2024-08-22" ], - "x-snyk-api-resource": "environments", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-10-19~beta", - "x-stability-level": "beta" - }, + "x-snyk-api-resource": "sboms", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-08-22", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/sbom_tests": { "post": { - "description": "Create a new environment and run a scan\n\n#### Required permissions\n\n- `Create environments (org.cloud_environments.create)`", - "operationId": "createEnvironment", + "description": "Create an SBOM test run by supplying an SBOM document. The components contained in the given document will get analyzed for known vulnerabilities. In order for component identification to be successful, they must have a PackageURL (purl) of a supported purl type assigned. Analysis will be skipped for any component that does not fulfill this requirement.\nSupported SBOM formats: CycloneDX 1.4 JSON, CycloneDX 1.5 JSON, CycloneDX 1.6 JSON, SPDX 2.3 JSON\nSupported purl types: apk, cargo, cocoapods, composer, conan, deb, gem, generic, golang, hex, maven, npm, nuget, pub, pypi, rpm, swift\n\n#### Required permissions\n\n- `Test Projects (org.project.test)`", + "operationId": "createSbomTestRun", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "Org ID", "in": "path", "name": "org_id", "required": true, @@ -34550,10 +78465,10 @@ "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/EnvironmentCreateAttributes" + "$ref": "#/components/schemas/SbomTestCreateAttributes" }, "type": { - "$ref": "#/components/schemas/EnvironmentType" + "$ref": "#/components/schemas/Types" } }, "required": [ @@ -34578,22 +78493,15 @@ "properties": { "data": { "additionalProperties": false, - "description": "Environment resource object", + "description": "SBOM test resource object", "properties": { - "attributes": { - "$ref": "#/components/schemas/EnvironmentAttributes" - }, "id": { - "description": "Environment ID", "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", "format": "uuid", "type": "string" }, - "relationships": { - "$ref": "#/components/schemas/EnvironmentRelationships" - }, "type": { - "$ref": "#/components/schemas/EnvironmentType" + "$ref": "#/components/schemas/Types" } }, "required": [ @@ -34606,13 +78514,14 @@ "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } - } + }, + "type": "object" } } }, - "description": "Created environment successfully", + "description": "Created SBOM test successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -34656,33 +78565,33 @@ "$ref": "#/components/responses/500" } }, - "summary": "Create New Environment (Early Access)", + "summary": "Create an SBOM test run (Early Access)", "tags": [ - "Cloud" + "SBOM" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta", - "2023-10-19~beta" + "2023-06-02~experimental", + "2023-08-31~beta", + "2024-04-22~beta", + "2024-07-10~beta" ], - "x-snyk-api-resource": "environments", + "x-snyk-api-resource": "sbom_tests", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-10-19~beta", + "x-snyk-api-version": "2024-07-10~beta", "x-stability-level": "beta" } }, - "/orgs/{org_id}/cloud/environments/{environment_id}": { - "delete": { - "description": "Delete an environment\n\n#### Required permissions\n\n- `Delete environments (org.cloud_environments.delete)`", - "operationId": "deleteEnvironment", + "/orgs/{org_id}/sbom_tests/{job_id}": { + "get": { + "description": "Get an SBOM test run status\n\n#### Required permissions\n\n- `Test Projects (org.project.test)`", + "operationId": "getSbomTestStatus", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "Org ID", "in": "path", "name": "org_id", "required": true, @@ -34692,16 +78601,65 @@ } }, { - "$ref": "#/components/parameters/EnvironmentId" + "$ref": "#/components/parameters/JobId" } ], "responses": { - "204": { - "description": "Returns an empty response", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "description": "SBOM test resource object", + "properties": { + "attributes": { + "properties": { + "status": { + "enum": [ + "processing", + "error", + "finished" + ], + "type": "string" + } + }, + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "type": "object" + } + } + }, + "description": "SBOM test run status", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -34738,31 +78696,42 @@ "$ref": "#/components/responses/500" } }, - "summary": "Delete Environment (Early Access)", + "summary": "Gets an SBOM test run status (Early Access)", "tags": [ - "Cloud" + "SBOM" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta", - "2023-10-19~beta" + "2023-06-02~experimental", + "2023-08-31~beta", + "2024-04-22~beta", + "2024-07-10~beta" ], - "x-snyk-api-resource": "environments", + "x-snyk-api-resource": "sbom_tests", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-10-19~beta", + "x-snyk-api-version": "2024-07-10~beta", "x-stability-level": "beta" - }, - "patch": { - "description": "Update an environment\n\n#### Required permissions\n\n- `Update environments (org.cloud_environments.edit)`", - "operationId": "updateEnvironment", + } + }, + "/orgs/{org_id}/sbom_tests/{job_id}/results": { + "get": { + "description": "Get an SBOM test run result\n\n#### Required permissions\n\n- `Test Projects (org.project.test)`", + "operationId": "getSbomTestResult", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Org ID", "in": "path", "name": "org_id", "required": true, @@ -34772,56 +78741,30 @@ } }, { - "$ref": "#/components/parameters/EnvironmentId" + "$ref": "#/components/parameters/JobId" + }, + { + "$ref": "#/components/parameters/Accept" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/EnvironmentUpdateAttributes" - }, - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "type": { - "$ref": "#/components/schemas/EnvironmentType" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - } - }, "responses": { "200": { "content": { + "application/json": { + "schema": { + "additionalProperties": true, + "type": "object" + } + }, "application/vnd.api+json": { "schema": { "properties": { "data": { "additionalProperties": false, - "description": "environment resource object", + "description": "SBOM test resource object", "properties": { "attributes": { - "$ref": "#/components/schemas/EnvironmentAttributes" + "$ref": "#/components/schemas/SbomTestResultsAttributes" }, "id": { "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", @@ -34829,10 +78772,23 @@ "type": "string" }, "relationships": { - "$ref": "#/components/schemas/EnvironmentRelationships" + "properties": { + "affected_packages": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/ResourceReference" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "type": "object" }, "type": { - "$ref": "#/components/schemas/EnvironmentType" + "$ref": "#/components/schemas/Types" } }, "required": [ @@ -34841,22 +78797,132 @@ ], "type": "object" }, + "included": { + "items": { + "additionalProperties": true, + "type": "object" + }, + "type": "array" + }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } }, "type": "object" } } }, - "description": "Updated an environment successfully", + "description": "SBOM test results", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + } + }, + "summary": "Gets an SBOM test run result (Early Access)", + "tags": [ + "SBOM" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2023-06-02~experimental", + "2023-08-31~beta", + "2024-04-22~beta", + "2024-07-10~beta" + ], + "x-snyk-api-resource": "sbom_tests", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-07-10~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/service_accounts": { + "get": { + "description": "Get all service accounts for an organization.\n\n#### Required permissions\n\n- `View service accounts (org.service_account.read)`", + "operationId": "getManyOrgServiceAccounts", + "parameters": [ + { + "description": "The ID of the Snyk Organization that owns the service accounts.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of service accounts is returned.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -34886,40 +78952,29 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Update Environment (Early Access)", + "summary": "Get a list of organization service accounts.", "tags": [ - "Cloud" + "ServiceAccounts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta", - "2023-10-19~beta" + "2023-09-07" ], - "x-snyk-api-resource": "environments", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-10-19~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/cloud/permissions": { + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + }, "post": { - "description": "Generate IAC template for Snyk to access your cloud resources\n\n#### Required permissions\n\n- `Create environments (org.cloud_environments.create)`", - "operationId": "getPermissions", + "description": "Create a service account for an organization. The service account can be used to access the Snyk API.\n\n#### Required permissions\n\n- `Create service accounts (org.service_account.create)`", + "operationId": "createOrgServiceAccount", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "The ID of the Snyk Organization that is creating and will own the service account.", "in": "path", "name": "org_id", "required": true, @@ -34927,26 +78982,75 @@ "format": "uuid", "type": "string" } + }, + { + "$ref": "#/components/parameters/Version" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/CreatePermissionsAttributes" + "additionalProperties": false, + "properties": { + "access_token_expires_at": { + "description": "The expiry date of the access token. Required only when auth_type is access_token.", + "example": "2025-08-16T00:00:00Z", + "format": "date-time", + "type": "string" + }, + "access_token_ttl_seconds": { + "description": "The time, in seconds, that a generated oauth access token will be valid for. Defaults to 1 hour if unset. Only used when auth_type is one of the oauth_* variants.", + "maximum": 86400, + "minimum": 3600, + "type": "number" + }, + "auth_type": { + "description": "The authentication strategy for the service account:\n * api_key - Regular Snyk API Key.\n * oauth_client_secret - OAuth2 client_credentials grant, which returns a client secret that can be used to retrieve an oauth access token.\n * oauth_private_key_jwt - OAuth2 client_credentials grant, using private_key_jwt client_assertion as laid out in OIDC Connect Core 1.0, section 9.\n * access_token - Access tokens are long-lived, can be used more than once for increased flexibility, and have expiries for enhanced security.", + "enum": [ + "api_key", + "oauth_client_secret", + "oauth_private_key_jwt", + "access_token" + ], + "type": "string" + }, + "jwks_url": { + "description": "A JWKs URL hosting your public keys, used to verify signed JWT requests. Must be https. Required only when auth_type is oauth_private_key_jwt.", + "type": "string" + }, + "name": { + "description": "A human-friendly name for the service account.", + "type": "string" + }, + "role_id": { + "description": "The ID of the role which the created service account should use. Obtained in the Snyk UI, via \"Group Page\" -\u003e \"Settings\" -\u003e \"Member Roles\" -\u003e \"Create new Role\". Can be shared among multiple accounts.", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "name", + "role_id", + "auth_type" + ], + "type": "object" }, "type": { - "example": "permission", + "description": "The Resource type.", + "enum": [ + "service_account" + ], "type": "string" } }, "required": [ - "type", "attributes" ], "type": "object" @@ -34958,49 +79062,36 @@ "type": "object" } } - } + }, + "required": true }, "responses": { "201": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "permissions resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PermissionsAttributes" - }, - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "type": { - "example": "permission", - "type": "string" - } - }, - "required": [ - "attributes", - "id", - "type" - ], - "type": "object" + "$ref": "#/components/schemas/ServiceAccount" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } - } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" } } }, - "description": "Created permissions successfully", + "description": "A new service account has been created", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -35031,43 +79122,34 @@ "401": { "$ref": "#/components/responses/401" }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Generate Cloud Provider Permissions (Early Access)", + "summary": "Create a service account for an organization.", "tags": [ - "Cloud" + "ServiceAccounts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta", - "2023-10-19~beta" + "2023-09-07" ], - "x-snyk-api-resource": "permissions", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-10-19~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" } }, - "/orgs/{org_id}/cloud/resources": { - "get": { - "description": "List resources for an organization\n\n#### Required permissions\n\n- `View resources (org.cloud_resources.read)`", - "operationId": "listResources", + "/orgs/{org_id}/service_accounts/{serviceaccount_id}": { + "delete": { + "description": "Delete a service account in an organization.\n\n#### Required permissions\n\n- `Remove service accounts (org.service_account.delete)`", + "operationId": "deleteServiceAccount", "parameters": [ { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "The ID of org to which the service account belongs.", "in": "path", "name": "org_id", "required": true, @@ -35077,93 +79159,22 @@ } }, { - "$ref": "#/components/parameters/EnvironmentIdQuery" - }, - { - "$ref": "#/components/parameters/ResourceType" - }, - { - "$ref": "#/components/parameters/ResourceId" - }, - { - "$ref": "#/components/parameters/NativeId" - }, - { - "$ref": "#/components/parameters/Id" - }, - { - "$ref": "#/components/parameters/Platform" - }, - { - "$ref": "#/components/parameters/Name" - }, - { - "$ref": "#/components/parameters/Kind" - }, - { - "$ref": "#/components/parameters/Location" - }, - { - "$ref": "#/components/parameters/Removed" + "description": "The ID of the service account.", + "in": "path", + "name": "serviceaccount_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" } ], "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "items": { - "properties": { - "attributes": { - "$ref": "#/components/schemas/ResourceAttributes" - }, - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/ResourceRelationships" - }, - "type": { - "example": "resource", - "type": "string" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "type": "object" - } - } - }, - "description": "Returns a list of resources", + "204": { + "description": "The service account has been deleted.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -35197,56 +79208,49 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "List Resources (Early Access)", + "summary": "Delete a service account in an organization.", "tags": [ - "Cloud" + "ServiceAccounts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta", - "2023-10-19~beta" + "2023-09-07" ], - "x-snyk-api-resource": "resources", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-10-19~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/cloud/scans": { + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" + }, "get": { - "description": "List scans for an organization\n\n#### Required permissions\n\n- `View scans (org.cloud_scans.read)`", - "operationId": "listScan", + "description": "Get an organization-level service account by its ID.\n\n#### Required permissions\n\n- `View service accounts (org.service_account.read)`", + "operationId": "getOneOrgServiceAccount", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" + "description": "The ID of the Snyk Organization that owns the service account.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "The ID of the service account.", "in": "path", - "name": "org_id", + "name": "serviceaccount_id", "required": true, "schema": { "format": "uuid", "type": "string" } + }, + { + "$ref": "#/components/parameters/Version" } ], "responses": { @@ -35254,50 +79258,35 @@ "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "items": { - "properties": { - "attributes": { - "$ref": "#/components/schemas/ScanAttributes" - }, - "id": { - "description": "Scan ID", - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/ScanRelationships" - }, - "type": { - "$ref": "#/components/schemas/ScanType" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "type": "array" + "$ref": "#/components/schemas/ServiceAccount" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Returns a list of scan instances", + "description": "Service account is returned.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -35327,66 +79316,90 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "List Scans (Early Access)", + "summary": "Get an organization service account.", "tags": [ - "Cloud" + "ServiceAccounts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta" + "2023-09-07" ], - "x-snyk-api-resource": "scans", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2022-12-21~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" }, - "post": { - "description": "Create and trigger a new scan for an environment\n\n#### Required permissions\n\n- `Create scans (org.cloud_scans.create)`", - "operationId": "createScan", + "patch": { + "description": "Update the name of an organization-level service account by its ID.\n\n#### Required permissions\n\n- `Edit service accounts (org.service_account.edit)`", + "operationId": "updateOrgServiceAccount", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The ID of the Snyk Organization that owns the service account.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "The ID of the service account.", "in": "path", - "name": "org_id", + "name": "serviceaccount_id", "required": true, "schema": { "format": "uuid", "type": "string" } + }, + { + "$ref": "#/components/parameters/Version" } ], "requestBody": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { "additionalProperties": false, "properties": { "attributes": { - "$ref": "#/components/schemas/ScanCreateAttributes" + "additionalProperties": false, + "properties": { + "name": { + "description": "A human-friendly name for the service account. Must be unique within the organization.", + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" }, - "relationships": { - "$ref": "#/components/schemas/ScanCreateRelationships" + "id": { + "description": "The ID of the service account. Must match the id in the url path.", + "format": "uuid", + "type": "string" }, "type": { - "$ref": "#/components/schemas/ScanType" + "description": "The Resource type.", + "enum": [ + "service_account" + ], + "type": "string" } }, "required": [ - "type" + "type", + "id", + "attributes" ], "type": "object" } @@ -35397,51 +79410,36 @@ "type": "object" } } - } + }, + "required": true }, "responses": { - "201": { + "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "Scan resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ScanAttributes" - }, - "id": { - "description": "Scan ID", - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/ScanRelationships" - }, - "type": { - "$ref": "#/components/schemas/ScanType" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" + "$ref": "#/components/schemas/ServiceAccount" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } - } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" } } }, - "description": "Created scan successfully", + "description": "Service account is returned.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -35478,41 +79476,43 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Create Scan (Early Access)", + "summary": "Update an organization service account.", "tags": [ - "Cloud" + "ServiceAccounts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-04-13~experimental", - "2022-12-21~beta" + "2023-09-07" ], - "x-snyk-api-resource": "scans", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2022-12-21~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" } }, - "/orgs/{org_id}/cloud/scans/{scan_id}": { - "get": { - "description": "Get a single scan for an organization\n\n#### Required permissions\n\n- `View scans (org.cloud_scans.read)`", - "operationId": "getScan", + "/orgs/{org_id}/service_accounts/{serviceaccount_id}/secrets": { + "post": { + "description": "Manage the client secret of an organization service account by the service account ID.\n\n#### Required permissions\n\n- `Edit service accounts (org.service_account.edit)`", + "operationId": "updateOrgServiceAccountSecret", "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "The ID of the Snyk Organization that owns the service account.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "description": "Organization ID", - "example": "9a46d918-8764-458c-1234-0987abcd6543", + "description": "The ID of the service account.", "in": "path", - "name": "org_id", + "name": "serviceaccount_id", "required": true, "schema": { "format": "uuid", @@ -35520,55 +79520,97 @@ } }, { - "$ref": "#/components/parameters/ScanId" + "$ref": "#/components/parameters/Version" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "mode": { + "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated secret.\n * `create` - Add a new secret, preserving existing secrets. A maximum of to two secrets can exist at a time.\n * `delete` - Remove an existing secret by value. At least one secret must remain per service account.\n", + "enum": [ + "replace", + "create", + "delete" + ], + "type": "string" + }, + "secret": { + "description": "Secret to delete when using `delete` mode", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + "type": { + "description": "The Resource type.", + "enum": [ + "service_account" + ], + "type": "string" + } + }, + "required": [ + "attributes", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "properties": { - "attributes": { - "$ref": "#/components/schemas/ScanAttributes" - }, - "id": { - "description": "Scan ID", - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/ScanRelationships" - }, - "type": { - "$ref": "#/components/schemas/ScanType" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" + "$ref": "#/components/schemas/ServiceAccount" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data" + ], "type": "object" } } }, - "description": "Returns a single scan instance", + "description": "Service account client secret has been updated.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -35598,37 +79640,34 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get scan (Early Access)", + "summary": "Manage an organization service account's client secret.", "tags": [ - "Cloud" + "ServiceAccounts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-12-21~beta" + "2023-09-07" ], - "x-snyk-api-resource": "scans", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2022-12-21~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "service_accounts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-09-07", + "x-stability-level": "stable" } }, - "/orgs/{org_id}/collections": { + "/orgs/{org_id}/settings/iac": { "get": { - "description": "Return a list of organization's collections with issues counts and projects count.\n\n#### Required permissions\n\n- `View Collections (org.collection.read)`\n\n- `View Project history (org.project.snapshot.read)`", - "operationId": "getCollections", + "description": "Get the Infrastructure as Code Settings for an org.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getIacSettingsForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "description": "The id of the org whose Infrastructure as Code settings are requested.", "in": "path", "name": "org_id", "required": true, @@ -35636,60 +79675,6 @@ "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "Return collections sorted by the specified attributes", - "in": "query", - "name": "sort", - "schema": { - "enum": [ - "name", - "projectsCount", - "issues" - ], - "type": "string" - } - }, - { - "description": "Return collections sorted in the specified direction", - "in": "query", - "name": "direction", - "schema": { - "default": "DESC", - "enum": [ - "ASC", - "DESC" - ], - "type": "string" - } - }, - { - "allowEmptyValue": true, - "description": "Return collections which names include the provided string", - "in": "query", - "name": "name", - "schema": { - "maxLength": 255, - "type": "string" - } - }, - { - "allowEmptyValue": true, - "description": "Return collections where is_generated matches the provided boolean", - "in": "query", - "name": "is_generated", - "schema": { - "type": "boolean" - } } ], "responses": { @@ -35697,25 +79682,28 @@ "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "items": { - "$ref": "#/components/schemas/CollectionResponse" - }, - "type": "array" + "$ref": "#/components/schemas/OrgIacSettingsResponse" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Returns a list of collections", + "description": "The Infrastructure as Code Settings of the org.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -35753,29 +79741,28 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get collections", + "summary": "Get the Infrastructure as Code Settings for an org.", "tags": [ - "Collection" + "IacSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2021-12-09" ], - "x-snyk-api-resource": "collections", + "x-snyk-api-resource": "iac_settings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", + "x-snyk-api-version": "2021-12-09", "x-stability-level": "stable" }, - "post": { - "description": "Create a collection\n\n#### Required permissions\n\n- `Create Collections (org.collection.create)`", - "operationId": "createCollection", + "patch": { + "description": "Update the Infrastructure as Code Settings for an org.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "updateIacSettingsForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "description": "The id of the org whose Infrastructure as Code settings are getting updated", "in": "path", "name": "org_id", "required": true, @@ -35789,61 +79776,47 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/CreateCollectionRequest" + "properties": { + "data": { + "$ref": "#/components/schemas/OrgIacSettingsRequest" + } + }, + "type": "object" } } } }, "responses": { - "201": { + "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "collection resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/CollectionAttributes" - }, - "id": { - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/CollectionRelationships" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "attributes", - "relationships" - ], - "type": "object" + "$ref": "#/components/schemas/OrgIacSettingsResponse" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Returned collection", + "description": "The Infrastructure as Code Settings of the org were updated.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -35873,38 +79846,34 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Create a collection", + "summary": "Update the Infrastructure as Code Settings for an org", "tags": [ - "Collection" + "IacSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2021-12-09" ], - "x-snyk-api-resource": "collections", + "x-snyk-api-resource": "iac_settings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", + "x-snyk-api-version": "2021-12-09", "x-stability-level": "stable" } }, - "/orgs/{org_id}/collections/{collection_id}": { - "delete": { - "description": "Delete a collection\n\n#### Required permissions\n\n- `Delete Collections (org.collection.delete)`", - "operationId": "deleteCollection", + "/orgs/{org_id}/settings/open_source/languages": { + "get": { + "description": "Retrieves the language settings for a specific organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getOrgLanguagesSettings", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "description": "The id of the org for which we want to update the Snyk Languages settings", "in": "path", "name": "org_id", "required": true, @@ -35914,19 +79883,46 @@ } }, { - "$ref": "#/components/parameters/CollectionId" + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/Limit" } ], "responses": { - "204": { - "description": "Collection was deleted successfully", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/LanguagesSettingsResponse" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "The Languages settings for the org", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -35956,36 +79952,34 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Delete a collection", + "summary": "Get language settings for an organization (Early Access)", "tags": [ - "Collection" + "LanguagesSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2024-08-25~beta" ], - "x-snyk-api-resource": "collections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", - "x-stability-level": "stable" - }, - "get": { - "description": "Get a collection\n\n#### Required permissions\n\n- `View Collections (org.collection.read)`", - "operationId": "getCollection", + "x-snyk-api-resource": "languages_settings", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-08-25~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/settings/open_source/languages/{language}": { + "patch": { + "description": "Updates one or more language settings for a specific organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `Edit Organization (org.edit)`", + "operationId": "updateOrgLanguagesSettings", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "description": "The id of the org for which we want to update the Snyk Languages settings", "in": "path", "name": "org_id", "required": true, @@ -35995,59 +79989,72 @@ } }, { - "$ref": "#/components/parameters/CollectionId" + "description": "The language for which settings are being updated", + "in": "path", + "name": "language", + "required": true, + "schema": { + "enum": [ + "javascript", + "python", + "dotnet", + "php", + "golang", + "java" + ], + "type": "string" + } } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/LanguagesSettingsUpdateRequest" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "collection resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/CollectionAttributes" - }, - "id": { - "format": "uuid", - "type": "string" - }, - "relationships": { - "$ref": "#/components/schemas/CollectionRelationships" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "attributes", - "relationships" - ], - "type": "object" + "$ref": "#/components/schemas/LanguagesSettingsResponse" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Returned collection", + "description": "The Languages settings for the org have been updated", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -36077,36 +80084,34 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get a collection", + "summary": "Update language settings for an organization (Early Access)", "tags": [ - "Collection" + "LanguagesSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2024-08-25~beta" ], - "x-snyk-api-resource": "collections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", - "x-stability-level": "stable" - }, - "patch": { - "description": "Edit a collection\n\n#### Required permissions\n\n- `Edit Collections (org.collection.edit)`", - "operationId": "updateCollection", + "x-snyk-api-resource": "languages_settings", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-08-25~beta", + "x-stability-level": "beta" + } + }, + "/orgs/{org_id}/settings/opensource": { + "get": { + "description": "Returns settings for your Org which may also be controlled at the Group level.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getOpenSourceSettingsForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "description": "The id of the org.", "in": "path", "name": "org_id", "required": true, @@ -36114,70 +80119,69 @@ "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/CollectionId" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/UpdateCollectionRequest" - } - } - } - }, "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "collection resource object", + "description": "The Open Source settings for an Org.", "properties": { "attributes": { - "$ref": "#/components/schemas/CollectionAttributes" + "properties": { + "reachability": { + "description": "The reachability setting for Org.", + "properties": { + "enabled": { + "description": "When enabled projects in this Org will be scanned for reachable vulnerabilities.", + "example": true, + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" }, "id": { + "description": "ID", + "example": "ea536a06-0566-40ca-b96b-155568aa2027", "format": "uuid", "type": "string" }, - "relationships": { - "$ref": "#/components/schemas/CollectionRelationships" - }, "type": { - "$ref": "#/components/schemas/Types" + "description": "Content type", + "example": "opensource_settings", + "type": "string" } }, - "required": [ - "id", - "attributes", - "relationships" - ], "type": "object" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Returned collection", + "description": "The Open Source Settings for given Org.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -36207,32 +80211,28 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Edit a collection", + "summary": "Get the Open Source Settings for an Org. (Early Access)", "tags": [ - "Collection" + "OpenSourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2024-10-15~beta" ], - "x-snyk-api-resource": "collections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", - "x-stability-level": "stable" + "x-snyk-api-resource": "open_source", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/orgs/{org_id}/collections/{collection_id}/relationships/projects": { + "/orgs/{org_id}/settings/opensource/broker": { "delete": { - "description": "Remove projects from a collection by specifying an array of project ids\n\n#### Required permissions\n\n- `Edit Collections (org.collection.edit)`", - "operationId": "deleteProjectsCollection", + "description": "Deletes the opensource broker setting for the organization by uninstalling the Snyk App\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "deleteOpensourceBrokerSettingForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -36243,33 +80243,17 @@ "name": "org_id", "required": true, "schema": { - "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/CollectionId" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/DeleteProjectsFromCollectionRequest" - } - } - } - }, "responses": { "204": { - "description": "successfully removing projects from a collection", + "description": "Successfully deleted opensource broker setting", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -36299,30 +80283,26 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Remove projects from a collection", + "summary": "Delete opensource broker setting for organization", "tags": [ - "Collection" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2024-10-15" ], - "x-snyk-api-resource": "collections", + "x-snyk-api-resource": "opensourceSettings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" }, "get": { - "description": "Return a list of organization's projects that are from the specified collection.\n\n#### Required permissions\n\n- `View Collections (org.collection.read)`\n\n- `View Projects (org.project.read)`\n\n- `View Project history (org.project.snapshot.read)`", - "operationId": "getProjectsOfCollection", + "description": "Returns whether the opensource broker setting is enabled for the organization\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getOpensourceBrokerSetting", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -36333,117 +80313,8 @@ "name": "org_id", "required": true, "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/CollectionId" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "Return projects sorted by the specified attributes", - "in": "query", - "name": "sort", - "schema": { - "enum": [ - "imported", - "last_tested_at", - "issues" - ], - "type": "string" - } - }, - { - "description": "Return projects sorted in the specified direction", - "in": "query", - "name": "direction", - "schema": { - "default": "DESC", - "enum": [ - "ASC", - "DESC" - ], "type": "string" } - }, - { - "description": "Return projects that belong to the provided targets", - "in": "query", - "name": "target_id", - "schema": { - "items": { - "format": "uuid", - "type": "string" - }, - "maxItems": 25, - "type": "array" - } - }, - { - "description": "Return projects that are with or without issues", - "in": "query", - "name": "show", - "schema": { - "items": { - "enum": [ - "vuln-groups", - "clean-groups" - ], - "type": "string" - }, - "type": "array" - } - }, - { - "description": "Return projects that match the provided integration types", - "in": "query", - "name": "integration", - "schema": { - "items": { - "enum": [ - "acr", - "api", - "artifactory-cr", - "aws-lambda", - "azure-functions", - "azure-repos", - "bitbucket-cloud", - "bitbucket-connect-app", - "bitbucket-server", - "cli", - "cloud-foundry", - "digitalocean-cr", - "docker-hub", - "ecr", - "gcr", - "github-cr", - "github-enterprise", - "github", - "gitlab-cr", - "gitlab", - "google-artifact-cr", - "harbor-cr", - "heroku", - "ibm-cloud", - "kubernetes", - "nexus-cr", - "pivotal", - "quay-cr", - "terraform-cloud" - ], - "type": "string" - }, - "type": "array" - } } ], "responses": { @@ -36451,11 +80322,33 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetProjectsOfCollectionResponse" + "properties": { + "data": { + "additionalProperties": false, + "description": "opensource broker setting", + "properties": { + "enabled": { + "description": "Whether the opensource broker setting is enabled", + "example": true, + "type": "boolean" + } + }, + "required": [ + "enabled" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + } } } }, - "description": "Returns a list of projects from the specified collection", + "description": "Successfully retrieved opensource broker setting", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -36493,23 +80386,22 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get projects from the specified collection", + "summary": "Get opensource broker setting for organization", "tags": [ - "Collection" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2024-10-15" ], - "x-snyk-api-resource": "collections", + "x-snyk-api-resource": "opensourceSettings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" }, "post": { - "description": "Add projects to a collection by specifying an array of project ids\n\n#### Required permissions\n\n- `Edit Collections (org.collection.edit)`", - "operationId": "updateCollectionWithProjects", + "description": "Enables the opensource broker setting for an organization by installing the Snyk App\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "enableOpensourceBrokerForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -36520,26 +80412,45 @@ "name": "org_id", "required": true, "schema": { - "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/CollectionId" } ], "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/UpdateCollectionWithProjectsRequest" - } - } - } + "$ref": "#/components/requestBodies/EmptyRequestBody" }, "responses": { - "204": { - "description": "successfully adding projects to a collection", + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "description": "enable result", + "properties": { + "status": { + "enum": [ + "success" + ], + "example": "success", + "type": "string" + } + }, + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "additionalProperties": false, + "type": "object" + } + } + } + } + }, + "description": "Enabled opensource broker successfully", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -36576,160 +80487,74 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Add projects to a collection", + "summary": "Enable opensource broker for organization", "tags": [ - "Collection" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-06-01~beta", - "2023-09-12" + "2024-10-15" ], - "x-snyk-api-resource": "collections", + "x-snyk-api-resource": "opensourceSettings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-12", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" } }, - "/orgs/{org_id}/container_images": { + "/orgs/{org_id}/settings/opensource/{ecosystem}/broker": { "get": { - "description": "List instances of container image\n\n#### Required permissions\n\n- `View container images (org.container_image.read)`", - "operationId": "listContainerImage", + "description": "Retrieves all Broker settings of a specific Open Source Ecosystem for an Organization\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getOpensourceBrokerEcosystemSettingsForOrg", "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, { "description": "Org ID", "in": "path", "name": "org_id", "required": true, "schema": { - "example": "f59045b3-f093-40c3-871d-a334ae30c568", - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/ImageIds" - }, - { - "description": "The image Operating System and processor architecture", - "example": "linux/amd64", - "in": "query", - "name": "platform", - "schema": { - "enum": [ - "aix/ppc64", - "android/386", - "android/amd64", - "android/arm", - "android/arm/v5", - "android/arm/v6", - "android/arm/v7", - "android/arm64", - "android/arm64/v8", - "darwin/amd64", - "darwin/arm", - "darwin/arm/v5", - "darwin/arm/v6", - "darwin/arm/v7", - "darwin/arm64", - "darwin/arm64/v8", - "dragonfly/amd64", - "freebsd/386", - "freebsd/amd64", - "freebsd/arm", - "freebsd/arm/v5", - "freebsd/arm/v6", - "freebsd/arm/v7", - "illumos/amd64", - "ios/arm64", - "ios/arm64/v8", - "js/wasm", - "linux/386", - "linux/amd64", - "linux/arm", - "linux/arm/v5", - "linux/arm/v6", - "linux/arm/v7", - "linux/arm64", - "linux/arm64/v8", - "linux/loong64", - "linux/mips", - "linux/mipsle", - "linux/mips64", - "linux/mips64le", - "linux/ppc64", - "linux/ppc64le", - "linux/riscv64", - "linux/s390x", - "linux/x86_64", - "netbsd/386", - "netbsd/amd64", - "netbsd/arm", - "netbsd/arm/v5", - "netbsd/arm/v6", - "netbsd/arm/v7", - "openbsd/386", - "openbsd/amd64", - "openbsd/arm", - "openbsd/arm/v5", - "openbsd/arm/v6", - "openbsd/arm/v7", - "openbsd/arm64", - "openbsd/arm64/v8", - "plan9/386", - "plan9/amd64", - "plan9/arm", - "plan9/arm/v5", - "plan9/arm/v6", - "plan9/arm/v7", - "solaris/amd64", - "windows/386", - "windows/amd64", - "windows/arm", - "windows/arm/v5", - "windows/arm/v6", - "windows/arm/v7", - "windows/arm64", - "windows/arm64/v8" - ], - "example": "linux/amd64", "type": "string" } }, { - "$ref": "#/components/parameters/Names" - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" + "description": "The ecosystem identifier", + "in": "path", + "name": "ecosystem", + "required": true, + "schema": { + "enum": [ + "Dotnet", + "Golang" + ], + "type": "string" + } } ], "responses": { "200": { "content": { "application/vnd.api+json": { + "examples": { + "Empty": { + "$ref": "#/components/examples/GetBrokerSettingsResponseEmpty" + }, + "WithIntegrationsForGolang": { + "$ref": "#/components/examples/GetBrokerSettingsResponseWithIntegrationsGolang" + }, + "WithIntegrationsForNuGet": { + "$ref": "#/components/examples/GetBrokerSettingsResponseWithIntegrationsNuGet" + } + }, "schema": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/Image" - }, - "type": "array" + "$ref": "#/components/schemas/BrokerSettings" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -36737,12 +80562,11 @@ "links": { "$ref": "#/components/schemas/PaginatedLinks" } - }, - "type": "object" + } } } }, - "description": "Returns a list of container image instances", + "description": "Successfully retrieved Broker settings", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -36776,33 +80600,26 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "List instances of container image", + "summary": "Get opensource broker settings of ecosystem for organization", "tags": [ - "ContainerImage" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-03-08~beta", - "2023-08-18~beta", - "2023-11-02" + "2024-10-15" ], - "x-snyk-api-resource": "container_images", + "x-snyk-api-resource": "opensourceSettings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-02", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/container_images/{image_id}": { - "get": { - "description": "Get instance of container image\n\n#### Required permissions\n\n- `View container images (org.container_image.read)`", - "operationId": "getContainerImage", + }, + "patch": { + "description": "Updates all Broker settings of a specific Open Source Ecosystem for an Organization.\nThis endpoint has JSON-PATCH semantics: only provided Broker integrations are updated.\nProvide an empty value for `urls` to remove a Broker integration.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "updateOpensourceBrokerEcosystemSettingsForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -36813,36 +80630,81 @@ "name": "org_id", "required": true, "schema": { - "example": "f59045b3-f093-40c3-871d-a334ae30c568", - "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/ImageId20231102" + "description": "The ecosystem identifier", + "in": "path", + "name": "ecosystem", + "required": true, + "schema": { + "enum": [ + "Dotnet", + "Golang" + ], + "type": "string" + } } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "examples": { + "AddGolangIntegration": { + "$ref": "#/components/examples/PostBrokerSettingsRequestAddIntegrationGolang" + }, + "AddNuGetIntegration": { + "$ref": "#/components/examples/PostBrokerSettingsRequestAddIntegrationNuGet" + }, + "EditIntegrations": { + "$ref": "#/components/examples/PostBrokerSettingsRequestEditIntegrations" + }, + "RemoveIntegration": { + "$ref": "#/components/examples/PostBrokerSettingsRequestRemoveIntegration" + } + }, + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/BrokerSettings" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "required": true + }, "responses": { "200": { "content": { "application/vnd.api+json": { + "examples": { + "WithIntegrations": { + "$ref": "#/components/examples/PostBrokerSettingsResponse" + } + }, "schema": { "properties": { "data": { - "$ref": "#/components/schemas/Image" + "$ref": "#/components/schemas/BrokerSettings" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/PaginatedLinks" } - }, - "type": "object" + } } } }, - "description": "Returns an instance of container image", + "description": "Successfully updated Broker settings", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -36876,71 +80738,71 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Get instance of container image", + "summary": "Update opensource broker settings of ecosystem for organization", "tags": [ - "ContainerImage" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-03-08~beta", - "2023-11-02" + "2024-10-15" ], - "x-snyk-api-resource": "container_images", + "x-snyk-api-resource": "opensourceSettings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-02", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" } }, - "/orgs/{org_id}/container_images/{image_id}/relationships/image_target_refs": { + "/orgs/{org_id}/settings/opensource/{ecosystem}/private-registries": { "get": { - "description": "List instances of image target references for a container image\n\n#### Required permissions\n\n- `View container images (org.container_image.read)`", - "operationId": "listImageTargetRefs", + "description": "Retrieves the publicly-accessible private registry settings of a specific Open Source Ecosystem for an Organization.\nThese are registries (e.g. JFrog Artifactory, Sonatype Nexus) hosted on a public URL and reached directly with\ncredentials, without the Snyk Broker.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getOpensourcePrivateRegistryEcosystemSettingsForOrg", "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, { "description": "Org ID", "in": "path", "name": "org_id", "required": true, "schema": { - "example": "f59045b3-f093-40c3-871d-a334ae30c568", - "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/ImageId20231102" - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" + "description": "The ecosystem identifier", + "in": "path", + "name": "ecosystem", + "required": true, + "schema": { + "enum": [ + "Dotnet", + "Golang" + ], + "type": "string" + } } ], "responses": { "200": { "content": { "application/vnd.api+json": { + "examples": { + "Empty": { + "$ref": "#/components/examples/GetPrivateRegistrySettingsResponseEmpty" + }, + "WithIntegrations": { + "$ref": "#/components/examples/GetPrivateRegistrySettingsResponseWithIntegrations" + } + }, "schema": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/ImageTargetRef" - }, - "type": "array" + "$ref": "#/components/schemas/PrivateRegistrySettings" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -36948,12 +80810,11 @@ "links": { "$ref": "#/components/schemas/PaginatedLinks" } - }, - "type": "object" + } } } }, - "description": "Returns a list of image target references for a container image", + "description": "Successfully retrieved private registry settings", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -36987,32 +80848,26 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "List instances of image target references for a container image", + "summary": "Get opensource private registry settings of ecosystem for organization", "tags": [ - "ContainerImage" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-08-18~beta", - "2023-11-02" + "2024-10-15" ], - "x-snyk-api-resource": "container_images", + "x-snyk-api-resource": "opensourceSettings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-02", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/container_import/{integration_id}/policy/dry_run": { - "post": { - "description": "Creates an asynchronous dry run job to test a container registry import policy\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", - "operationId": "createContainerRegistryImportPolicyDryRun", + }, + "patch": { + "description": "Updates the publicly-accessible private registry settings of a specific Open Source Ecosystem for an Organization.\nThis endpoint has JSON-PATCH semantics: only provided integrations are updated.\nProvide an empty value for `urls` to remove an integration.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", + "operationId": "updateOpensourcePrivateRegistryEcosystemSettingsForOrg", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -37023,17 +80878,19 @@ "name": "org_id", "required": true, "schema": { - "format": "uuid", "type": "string" } }, { - "description": "Container Registry Integration ID", + "description": "The ecosystem identifier", "in": "path", - "name": "integration_id", + "name": "ecosystem", "required": true, "schema": { - "format": "uuid", + "enum": [ + "Dotnet", + "Golang" + ], "type": "string" } } @@ -37041,26 +80898,22 @@ "requestBody": { "content": { "application/vnd.api+json": { + "examples": { + "AddIntegration": { + "$ref": "#/components/examples/PostPrivateRegistrySettingsRequestAddIntegration" + }, + "EditIntegrations": { + "$ref": "#/components/examples/PostPrivateRegistrySettingsRequestEditIntegrations" + }, + "RemoveIntegration": { + "$ref": "#/components/examples/PostPrivateRegistrySettingsRequestRemoveIntegration" + } + }, "schema": { + "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/ContainerRegistryImportPolicyAttributes" - }, - "type": { - "enum": [ - "container_registry_import_policy" - ], - "type": "string" - } - }, - "required": [ - "type", - "attributes" - ], - "type": "object" + "$ref": "#/components/schemas/PrivateRegistrySettings" } }, "required": [ @@ -37069,68 +80922,38 @@ "type": "object" } } - } + }, + "required": true }, "responses": { - "202": { + "200": { "content": { "application/vnd.api+json": { + "examples": { + "WithIntegrations": { + "$ref": "#/components/examples/PostPrivateRegistrySettingsResponse" + } + }, "schema": { - "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "dry run job resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/DryRunJobCreationResponseAttributes" - }, - "id": { - "description": "The dry run job ID", - "format": "uuid", - "type": "string" - }, - "type": { - "enum": [ - "dry_run_job" - ], - "type": "string" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" + "$ref": "#/components/schemas/PrivateRegistrySettings" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/PaginatedLinks" } - }, - "type": "object" + } } } }, - "description": "Dry run job created successfully", + "description": "Successfully updated private registry settings", "headers": { - "content-location": { - "description": "A pointer to the newly created dry run job resource", - "required": true, - "schema": { - "format": "string", - "type": "string" - } - }, "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -37160,38 +80983,34 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Create a dry run job for a container registry import policy (Early Access)", + "summary": "Update opensource private registry settings of ecosystem for organization", "tags": [ - "ContainerRegistryImportPolicy" + "OpensourceSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta", - "2025-09-17~beta" + "2024-10-15" ], - "x-snyk-api-resource": "import_policy", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-17~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "opensourceSettings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" } }, - "/orgs/{org_id}/container_import/{integration_id}/policy/dry_run/{job_id}": { + "/orgs/{org_id}/settings/sast": { "get": { - "description": "Retrieves the status and results of a dry run job\n\n#### Required permissions\n\n- `Edit integrations (org.integration.edit)`", - "operationId": "getDryRunJob", + "description": "Retrieves the SAST settings for an org\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getSastSettings", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "description": "The id of the org for which we want to retrieve the SAST settings", "in": "path", "name": "org_id", "required": true, @@ -37199,26 +81018,6 @@ "format": "uuid", "type": "string" } - }, - { - "description": "Container Registry Integration ID", - "in": "path", - "name": "integration_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Dry run job ID", - "in": "path", - "name": "job_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } } ], "responses": { @@ -37229,43 +81028,25 @@ "additionalProperties": false, "properties": { "data": { - "additionalProperties": false, - "description": "dry run job resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/DryRunJobResponseAttributes" - }, - "id": { - "description": "The dry run job ID", - "format": "uuid", - "type": "string" - }, - "type": { - "enum": [ - "dry_run_job" - ], - "type": "string" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" + "$ref": "#/components/schemas/SastEnablement" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/SelfLink" + "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Dry run job retrieved successfully", + "description": "The SAST settings for the org are being retrieved", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -37303,104 +81084,131 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get a dry run job (Early Access)", + "summary": "Retrieves the SAST settings for an org", "tags": [ - "ContainerRegistryImportPolicy" + "SastSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2025-09-17~beta" + "2023-06-22" ], - "x-snyk-api-resource": "import_policy", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2025-09-17~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/export": { - "post": { - "description": "Create and start an export for an org\n\n#### Required permissions\n\n- `View Organization reports (org.report.read)`", - "operationId": "createExport", + "x-snyk-api-resource": "sast_settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2023-06-22", + "x-stability-level": "stable" + }, + "patch": { + "description": "Enable/Disable the Snyk Code settings for an org\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `Edit Organization (org.edit)`", + "operationId": "updateOrgSastSettings", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/orgId" - }, - { - "$ref": "#/components/parameters/include_deleted" - }, - { - "$ref": "#/components/parameters/include_deactivated" + "description": "The id of the org for which we want to update the Snyk Code setting", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } } ], "requestBody": { - "$ref": "#/components/requestBodies/CreateOrgExport" - }, - "responses": { - "202": { - "$ref": "#/components/responses/CreateExport" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "429": { - "$ref": "#/components/responses/TooManyRequests" + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "sast_enabled": { + "description": "The value of the updated settings for sastEnabled setting", + "type": "boolean" + } + }, + "required": [ + "sast_enabled" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } }, - "500": { - "$ref": "#/components/responses/500" - } + "required": true }, - "security": [ - { - "TokenAuth": [] - } - ], - "summary": "Start an export", - "tags": [ - "Export" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15" - ], - "x-snyk-api-resource": "export", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/export/{export_id}": { - "get": { - "description": "Get an export results\n\n#### Required permissions\n\n- `View Organization reports (org.report.read)`", - "operationId": "getExport", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/orgId" - }, - { - "$ref": "#/components/parameters/exportId" - } - ], "responses": { - "200": { - "$ref": "#/components/responses/GetExport" + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/SastEnablement" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + } + }, + "required": [ + "jsonapi", + "data", + "links" + ], + "type": "object" + } + } + }, + "description": "The SAST settings for the org are being updated", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "400": { "$ref": "#/components/responses/400" @@ -37414,39 +81222,35 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "security": [ - { - "TokenAuth": [] - } - ], - "summary": "Get export results", + "summary": "Enable/Disable the Snyk Code settings for an org", "tags": [ - "Export" + "SastSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2023-08-24~experimental", + "2023-09-11" ], - "x-snyk-api-resource": "export", + "x-snyk-api-resource": "sast_settings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", + "x-snyk-api-version": "2023-09-11", "x-stability-level": "stable" } }, - "/orgs/{org_id}/invites": { + "/orgs/{org_id}/settings/secrets": { "get": { - "description": "List pending user invitations to an organization.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View users (org.user.read)`", - "operationId": "listOrgInvitation", + "description": "Retrieves the Secrets settings for an org\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getSecretsSettings", "parameters": [ { - "description": "The id of the org the user is being invited to", + "$ref": "#/components/parameters/Version" + }, + { + "description": "The id of the org for which we want to retrieve the Secrets settings", "in": "path", "name": "org_id", "required": true, @@ -37454,18 +81258,6 @@ "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" } ], "responses": { @@ -37476,10 +81268,7 @@ "additionalProperties": false, "properties": { "data": { - "items": { - "$ref": "#/components/schemas/OrgInvitation" - }, - "type": "array" + "$ref": "#/components/schemas/SecretsEnablement" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -37497,7 +81286,7 @@ } } }, - "description": "List of pending invitations to an organization.", + "description": "The Secrets settings for the org are being retrieved", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -37535,28 +81324,28 @@ "$ref": "#/components/responses/500" } }, - "summary": "List pending user invitations to an organization.", + "summary": "Retrieves the Secrets settings for an org (Early Access)", "tags": [ - "Invites" + "SecretsSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-11-14" + "2024-10-15~beta" ], - "x-snyk-api-resource": "org_invitations", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-11-14", - "x-stability-level": "stable" + "x-snyk-api-resource": "secrets_settings", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" }, - "post": { - "description": "Invite a user to an organization with a role.\n\n#### Required permissions\n\n- `Invite users (org.user.invite)`", - "operationId": "createOrgInvitation", + "patch": { + "description": "Update the Secrets settings for an org\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `Edit Organization (org.edit)`", + "operationId": "updateOrgSecretsSettings", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "The id of the org the user is being invited to", + "description": "The id of the org for which we want to update the Secrets settings", "in": "path", "name": "org_id", "required": true, @@ -37573,7 +81362,35 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/OrgInvitationPostData" + "additionalProperties": false, + "properties": { + "attributes": { + "additionalProperties": false, + "properties": { + "secrets_enabled": { + "description": "The value of the updated setting for secretsEnabled", + "type": "boolean" + } + }, + "required": [ + "secrets_enabled" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "id", + "type", + "attributes" + ], + "type": "object" } }, "required": [ @@ -37582,7 +81399,8 @@ "type": "object" } } - } + }, + "required": true }, "responses": { "201": { @@ -37592,7 +81410,7 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/OrgInvitation20240621" + "$ref": "#/components/schemas/SecretsEnablement" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -37603,22 +81421,18 @@ }, "required": [ "jsonapi", - "data" + "data", + "links" ], "type": "object" } } }, - "description": "A new organization invitation has been created", + "description": "The Secrets settings for the org are being updated", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "schema": { - "type": "string" - } - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -37652,41 +81466,32 @@ "$ref": "#/components/responses/500" } }, - "summary": "Invite a user to an organization", + "summary": "Update the Secrets settings for an org (Early Access)", "tags": [ - "Invites" + "SecretsSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-06-01", - "2023-04-28", - "2024-06-21" + "2024-10-15~beta" ], - "x-snyk-api-resource": "org_invitations", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-06-21", - "x-stability-level": "stable" + "x-snyk-api-resource": "secrets_settings", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, - "/orgs/{org_id}/invites/{invite_id}": { + "/orgs/{org_id}/slack_app/{bot_id}": { "delete": { - "description": "Cancel a pending user invitations to an organization.\n\n#### Required permissions\n\n- `Invite users (org.user.invite)`", - "operationId": "deleteOrgInvitation", + "description": "Remove the given Slack App integration\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "deleteSlackDefaultNotificationSettings", "parameters": [ { - "description": "The id of the org the user is being invited to", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "description": "The id of the pending invite to cancel", + "description": "Org ID", "in": "path", - "name": "invite_id", + "name": "org_id", "required": true, "schema": { "format": "uuid", @@ -37694,12 +81499,32 @@ } }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/BotId" } ], "responses": { "204": { - "$ref": "#/components/responses/204" + "description": "Slack App integration successfully removed", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } }, "400": { "$ref": "#/components/responses/400" @@ -37713,860 +81538,540 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Cancel a pending user invitations to an organization.", + "summary": "Remove the given Slack App integration", "tags": [ - "Invites" + "SlackSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-11-14" + "2022-11-07~experimental", + "2022-12-14" ], - "x-snyk-api-resource": "org_invitations", + "x-snyk-api-resource": "settings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-11-14", + "x-snyk-api-version": "2022-12-14", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/issues": { + }, "get": { - "description": "Get a list of an organization's issues.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `View Project history (org.project.snapshot.read)`", - "operationId": "listOrgIssues", + "description": "Get Slack integration default notification settings for the provided tenant ID and bot ID.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "getSlackDefaultNotificationSettings", "parameters": [ { "$ref": "#/components/parameters/Version" }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, { "description": "Org ID", "in": "path", "name": "org_id", "required": true, "schema": { - "example": "4a18d42f-0706-4ad0-b127-24078731fbed", "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/ScanItemId" - }, - { - "$ref": "#/components/parameters/ScanItemType" - }, - { - "$ref": "#/components/parameters/Type" - }, - { - "description": "A filter to select issues updated before this date.", - "in": "query", - "name": "updated_before", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "A filter to select issues updated after this date.", - "in": "query", - "name": "updated_after", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "A filter to select issues created before this date.", - "in": "query", - "name": "created_before", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "A filter to select issues created after this date.", - "in": "query", - "name": "created_after", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/EffectiveSeverityLevel" - }, - { - "$ref": "#/components/parameters/Status" - }, - { - "$ref": "#/components/parameters/Ignored" + "$ref": "#/components/parameters/BotId" } ], "responses": { "200": { - "$ref": "#/components/responses/ListIssues200" - }, - "401": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" - } - } - }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } - } - } - }, - "403": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/components/schemas/SlackDefaultSettingsData" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "description": "Default settings created successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get Slack integration default notification settings.", + "tags": [ + "SlackSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07~experimental", + "2022-12-14" + ], + "x-snyk-api-resource": "settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-12-14", + "x-stability-level": "stable" + }, + "post": { + "description": "Create new Slack notification default settings for a given tenant.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "createSlackDefaultNotificationSettings", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/BotId" + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SettingsRequest" + } + } + }, + "description": "Create new Slack notification default settings for a tenant." + }, + "responses": { + "201": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/SlackDefaultSettingsData" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Default settings created successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create new Slack notification default settings.", + "tags": [ + "SlackSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07~experimental", + "2022-12-14" + ], + "x-snyk-api-resource": "settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-12-14", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/slack_app/{bot_id}/projects": { + "get": { + "description": "Slack notification settings overrides for projects. These settings overrides the default settings configured for the tenant.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "getSlackProjectNotificationSettingsCollection", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/BotId" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { "schema": { - "format": "date", - "type": "string" + "$ref": "#/components/schemas/GetProjectSettingsCollection" } } + }, + "description": "Return default settings for a tenant", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Slack notification settings overrides for projects", + "tags": [ + "SlackSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07~experimental", + "2022-12-14" + ], + "x-snyk-api-resource": "settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-12-14", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/slack_app/{bot_id}/projects/{project_id}": { + "delete": { + "description": "Remove Slack settings override for a project.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "deleteSlackProjectNotificationSettings", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Project ID", + "in": "path", + "name": "project_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/BotId" + } + ], + "responses": { + "204": { + "description": "Slack settings override for the project removed successfully.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Remove Slack settings override for a project.", + "tags": [ + "SlackSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07~experimental", + "2022-12-14" + ], + "x-snyk-api-resource": "settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-12-14", + "x-stability-level": "stable" + }, + "patch": { + "description": "Update Slack notification settings for a project.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "updateSlackProjectNotificationSettings", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/BotId" + }, + { + "description": "Project ID", + "in": "path", + "name": "project_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ProjectSettingsPatchRequest" + } } }, - "500": { + "description": "Update existing project specific settings for a project." + }, + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/ProjectSettingsData" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Slack notification settings for a project updated successfully.", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Get issues by org ID", + "summary": "Update Slack notification settings for a project.", "tags": [ - "Issues" + "SlackSettings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-03-10~experimental", - "2023-09-29~beta", - "2024-01-23" + "2022-11-07~experimental", + "2022-12-14" ], - "x-snyk-api-resource": "issues", + "x-snyk-api-resource": "settings", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-01-23", + "x-snyk-api-version": "2022-12-14", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/issues/{issue_id}": { - "get": { - "description": "Get an issue\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `View Project history (org.project.snapshot.read)`", - "operationId": "getOrgIssueByIssueID", + }, + "post": { + "description": "Create Slack settings override for a project.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "createSlackProjectNotificationSettings", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -38577,916 +82082,935 @@ "name": "org_id", "required": true, "schema": { - "example": "4a18d42f-0706-4ad0-b127-24078731fbed", "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/PathIssueId20240123" + "description": "Project ID", + "in": "path", + "name": "project_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/BotId" } ], - "responses": { - "200": { - "$ref": "#/components/responses/GetIssue20020240123" + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/SettingsRequest" + } + } }, - "400": { + "description": "Create new Slack notification default settings for a tenant." + }, + "responses": { + "201": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/ProjectSettingsData" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Project settings created successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, - "401": { + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create a new Slack settings override for a given project.", + "tags": [ + "SlackSettings" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07~experimental", + "2022-12-14" + ], + "x-snyk-api-resource": "settings", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-12-14", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/slack_app/{tenant_id}/channels": { + "get": { + "description": "Requires the Snyk Slack App to be set up for this org, will retrieve a list of channels the Snyk Slack App can access. Note that it is currently only possible to page forwards through this collection, no prev links will be generated and the ending_before parameter will not function.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "listChannels", + "parameters": [ + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/ChannelLimit" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/TenantId" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], + "data": { "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" + "$ref": "#/components/schemas/SlackChannel" }, - "minItems": 1, "type": "array" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" } }, "required": [ + "data", "jsonapi", - "errors" + "links" ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "description": "List of Slack channels", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a list of Slack channels", + "tags": [ + "Slack" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07" + ], + "x-snyk-api-resource": "channels", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-11-07", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/slack_app/{tenant_id}/channels/{channel_id}": { + "get": { + "description": "Requires the Snyk Slack App to be set up for this org. It will return the Slack channel name for the provided Slack channel ID.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", + "operationId": "getChannelNameById", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "Org ID", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/ChannelId" + }, + { + "$ref": "#/components/parameters/TenantId" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], + "properties": { + "data": { + "$ref": "#/components/schemas/SlackChannel" + }, "jsonapi": { - "version": "1.0" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" } }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "List of Slack channels", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get Slack Channel name by Slack Channel ID.", + "tags": [ + "Slack" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2022-11-07" + ], + "x-snyk-api-resource": "channels", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2022-11-07", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/targets": { + "get": { + "description": "Get a list of an organization's targets.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", + "operationId": "getOrgsTargets", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "description": "Calculate total amount of filtered results", + "in": "query", + "name": "count", + "schema": { + "type": "boolean" + } + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The id of the org to return a list of targets", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Return targets that match the provided value of is_private", + "in": "query", + "name": "is_private", + "schema": { + "type": "boolean" + } + }, + { + "description": "Return only the targets that has projects", + "in": "query", + "name": "exclude_empty", + "schema": { + "default": true, + "type": "boolean" + } + }, + { + "description": "Return targets that match the provided remote_url.", + "in": "query", + "name": "url", + "schema": { + "type": "string" + } + }, + { + "description": "Return targets that match the provided source_types", + "explode": false, + "in": "query", + "name": "source_types", + "schema": { + "items": { + "enum": [ + "bitbucket-server", + "gitlab", + "github-enterprise", + "bitbucket-cloud", + "bitbucket-connect-app", + "azure-repos", + "github", + "github-cloud-app", + "github-server-app", + "cli", + "docker-hub", + "in-memory-fs", + "acr", + "ecr", + "gcr", + "artifactory-cr", + "harbor-cr", + "quay-cr", + "github-cr", + "nexus-cr", + "nexus-private-repo", + "digitalocean-cr", + "gitlab-cr", + "google-artifact-cr", + "heroku", + "kubernetes", + "api", + "aws-lambda", + "azure-functions", + "cloud-foundry", + "pivotal", + "ibm-cloud", + "terraform-cloud" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return targets with display names starting with the provided string", + "in": "query", + "name": "display_name", + "schema": { + "type": "string" + } + }, + { + "description": "Return only targets which have been created at or after the specified date.\n", + "example": "2022-01-01T16:00:00Z", + "in": "query", + "name": "created_gte", + "schema": { + "format": "date-time", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/PublicTarget" }, - "minItems": 1, "type": "array" }, "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" + }, + "meta": { "additionalProperties": false, "example": { - "version": "1.0" + "count": 3 }, "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" + "count": { + "type": "number" } }, - "required": [ - "version" - ], "type": "object" } }, "required": [ "jsonapi", - "errors" + "data", + "links" ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token or a token with more permissions.", + "description": "A list of targets is returned for the targeted org", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get targets by org ID", + "tags": [ + "Targets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2021-08-20~beta", + "2024-02-21" + ], + "x-snyk-api-resource": "targets", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-02-21", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/targets/{target_id}": { + "delete": { + "description": "Delete the specified target.\n\n#### Required permissions\n\n- `Remove Projects (org.project.delete)`", + "operationId": "deleteOrgsTarget", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "The id of the org to delete", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The id of the target to delete", + "in": "path", + "name": "target_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "The target is deleted with all projects, if it is found in the specified org.", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Delete target by target ID", + "tags": [ + "Targets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2021-09-29~beta", + "2023-06-23~beta", + "2024-02-21" + ], + "x-snyk-api-resource": "targets", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-02-21", + "x-stability-level": "stable" + }, + "get": { + "description": "Get a specified target for an organization.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", + "operationId": "getOrgsTarget", + "parameters": [ + { + "$ref": "#/components/parameters/Version" + }, + { + "description": "The id of the org to return the target from", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The id of the target to return", + "in": "path", + "name": "target_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/PublicTarget" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/Links" } }, "required": [ "jsonapi", - "errors" + "data" ], "type": "object" } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "A single target is returned if it is found in the specified org", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, - "409": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get target by target ID", + "tags": [ + "Targets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2021-08-20~beta", + "2024-02-21" + ], + "x-snyk-api-resource": "targets", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-02-21", + "x-stability-level": "stable" + } + }, + "/orgs/{org_id}/test_jobs/{job_id}": { + "get": { + "description": "Get a test job.\n\nThe Test API is Asynchronous, and Tests begun through the API\nare assigned a Job ID which references the in-progress Test. The\nJob ID is provided in a successful response from the CreateTest\nendpoint.\n\nThis endpoint is used to poll for the status of a Test using its\nassociated Job ID.\n\nWhen the Job is Finished and the Test is ready for consumption,\nthe Related link will be populated in the response with a link\nto the finished Test entity.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getJob", + "parameters": [ + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" + }, + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" + }, + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" + }, + { + "description": "Snyk Org ID under which to run or query information\nabout a Job or Test.", + "in": "path", + "name": "org_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Job ID returned from the Test API to query.", + "in": "path", + "name": "job_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "description": "JobData represents a Job resource object.", + "properties": { + "attributes": { + "description": "JobAttributes represents the attributes of a Job resource", + "properties": { + "created_at": { + "description": "Creation time of the job resource", + "format": "date-time", + "type": "string" }, - "type": "object" + "status": { + "allOf": [ + { + "enum": [ + "pending", + "started", + "finished", + "errored" + ], + "type": "string" + } + ], + "description": "State of the test, whether it is pending, running, complete or errored." + } }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" + "required": [ + "status", + "created_at" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "relationships": { + "properties": { + "test": { + "allOf": [ + { + "properties": { + "data": { + "properties": { + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "tests" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + ], + "description": "Test resource associated with the finished Job." + } }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } + "required": [ + "test" + ], + "type": "object" }, - "required": [ - "status", - "detail" - ], - "type": "object" + "type": { + "enum": [ + "test_jobs" + ], + "type": "string" + } }, - "minItems": 1, - "type": "array" + "required": [ + "id", + "attributes", + "type" + ], + "type": "object" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" + "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" + }, + "links": { + "additionalProperties": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" }, "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" + "related": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "self": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" } }, - "required": [ - "version" - ], "type": "object" + }, + "meta": { + "$ref": "#/components/schemas/io.snyk.api.common.Meta" } }, "required": [ + "data", "jsonapi", - "errors" + "links" ], "type": "object" } } }, - "description": "Conflict: The requested operation conflicts with the current state of the resource in some way.", + "description": "Successful API response with a single resource", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", "schema": { - "format": "date-time", "type": "string" } }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", "schema": { - "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", "type": "string" } }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -39500,378 +83024,250 @@ } } }, - "500": { + "303": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } + "data": { + "description": "JobData represents a Job resource object.", + "properties": { + "attributes": { + "description": "JobAttributes represents the attributes of a Job resource", + "properties": { + "created_at": { + "description": "Creation time of the job resource", + "format": "date-time", + "type": "string" }, - "type": "object" + "status": { + "allOf": [ + { + "enum": [ + "pending", + "started", + "finished", + "errored" + ], + "type": "string" + } + ], + "description": "State of the test, whether it is pending, running, complete or errored." + } }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" + "required": [ + "status", + "created_at" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "relationships": { + "properties": { + "test": { + "allOf": [ + { + "properties": { + "data": { + "properties": { + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "tests" + ], + "type": "string" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + ], + "description": "Test resource associated with the finished Job." + } }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } + "required": [ + "test" + ], + "type": "object" }, - "required": [ - "status", - "detail" - ], - "type": "object" + "type": { + "enum": [ + "test_jobs" + ], + "type": "string" + } }, - "minItems": 1, - "type": "array" + "required": [ + "id", + "attributes", + "type" + ], + "type": "object" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" + "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" + }, + "links": { + "additionalProperties": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" }, "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" + "related": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "self": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" } }, - "required": [ - "version" - ], "type": "object" + }, + "meta": { + "$ref": "#/components/schemas/io.snyk.api.common.Meta" } }, "required": [ + "data", "jsonapi", - "errors" - ], - "type": "object" - } - } - }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "example": "2021-07-01T00:00:00Z", - "schema": { - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "schema": { - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "example": "2021-06-04", - "schema": { - "description": "Requested API version", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "example": "2021-06-04", - "schema": { - "description": "Resolved API version", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Get an issue", - "tags": [ - "Issues" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-01-23" - ], - "x-snyk-api-resource": "issues", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-01-23", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/jobs/export/{export_id}": { - "get": { - "description": "Get an export job status\n\n#### Required permissions\n\n- `View Organization reports (org.report.read)`", - "operationId": "getExportJobStatus", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/orgId" - }, - { - "$ref": "#/components/parameters/exportId" - } - ], - "responses": { - "200": { - "$ref": "#/components/responses/GetExportJob" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "security": [ - { - "TokenAuth": [] - } - ], - "summary": "Get export status", - "tags": [ - "Export" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15" - ], - "x-snyk-api-resource": "export", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/learn/assignments": { - "delete": { - "description": "Allows an admin to delete multiple assignments within their organization.\n\n**Note**: Assignments that are part of a Learning Program cannot be deleted through this endpoint.\n\n#### Required permissions\n\n- `Delete assignments (org.learn_assignment.delete)`", - "operationId": "deleteOrgAssignments", - "parameters": [ - { - "description": "The unique identifier of the organization.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/ApiVersion" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/DeleteAssignmentsRequest" - } - } - }, - "required": true - }, - "responses": { - "204": { - "description": "Assignments were successfully deleted.", + "links" + ], + "type": "object" + } + } + }, + "description": "Redirect to another resource after async processing.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "schema": { + "type": "string" + } + }, + "location": { + "required": true, + "schema": { + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "schema": { + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/ErrorDocument" + "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" } } }, - "description": "Conflict - The assignment cannot be deleted because it is part of a Learning Program.", + "description": "Invalid input", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "schema": { + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "schema": { + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Bulk deletion of assignments in an organization (Early Access)", + "summary": "Get a test job. (Early Access)", "tags": [ - "Learn assignment" + "Tests" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-13~beta" + "2024-10-15~beta" ], - "x-snyk-api-resource": "assignments", + "x-snyk-api-resource": "tests", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-13~beta", - "x-snyk-documentation": { - "category": "learn" - }, + "x-snyk-api-version": "2024-10-15~beta", "x-stability-level": "beta" - }, - "get": { - "description": "Allows an admin to obtain a comprehensive list of all assignments within their organization.\n\n#### Required permissions\n\n- `View Organization assignments (org.learn_assignment.read)`", - "operationId": "listOrgAssignments", + } + }, + "/orgs/{org_id}/tests": { + "post": { + "description": "Create a new test.\n\nProvide the items to be tested by Snyk as well as any configuration\nparameters for the test to be run.\n\nCurrently, scans using the Open Source (SCA) and Code Analysis (SAST)\nscanners can be run using the Test API.\n\nTests begun through the Test API yield lists of Findings when\nfinished. These Findings can be retrieved using the ListFindings endpoint.\n\nSuccessfully creating a new Test will yield a Job ID that can be used\nto poll for the Test's completion via the GetJob endpoint.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `Test packages (org.package.test)`", + "operationId": "createTest", "parameters": [ { - "description": "The unique identifier of the organization.", + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" + }, + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" + }, + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" + }, + { + "description": "Snyk Org ID under which to run or query information\nabout a Job or Test.", "in": "path", "name": "org_id", "required": true, @@ -39879,105 +83275,224 @@ "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/ApiVersion" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/TestRequestBody" + } + } + }, + "required": true + }, "responses": { - "200": { + "202": { "content": { "application/vnd.api+json": { "schema": { "properties": { "data": { - "items": { - "$ref": "#/components/schemas/LessonAssignmentDecoratedResource" + "properties": { + "attributes": { + "description": "JobAttributes represents the attributes of a Job resource", + "properties": { + "created_at": { + "description": "Creation time of the job resource", + "format": "date-time", + "type": "string" + }, + "status": { + "allOf": [ + { + "enum": [ + "pending", + "started", + "finished", + "errored" + ], + "type": "string" + } + ], + "description": "State of the test, whether it is pending, running, complete or errored." + } + }, + "required": [ + "status", + "created_at" + ], + "type": "object" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "enum": [ + "test_jobs" + ], + "type": "string" + } }, - "type": "array" + "required": [ + "type", + "id", + "attributes" + ], + "type": "object" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" }, "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "additionalProperties": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "properties": { + "related": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "self": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + } + }, + "type": "object" + }, + "meta": { + "$ref": "#/components/schemas/io.snyk.api.common.Meta" } }, "required": [ + "data", "jsonapi", - "links", - "data" + "links" ], "type": "object" } } }, - "description": "A list of assignments was successfully retrieved.", + "description": "The request has been accepted for processing, but processing has not yet completed.", "headers": { + "content-location": { + "description": "A pointer to the newly created Test resource", + "required": true, + "schema": { + "format": "string", + "type": "string" + } + }, "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "schema": { + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "schema": { + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + } + } + }, + "description": "Invalid input", + "headers": { + "deprecation": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "schema": { + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "schema": { + "type": "string" + } + }, + "snyk-version-requested": { + "schema": { + "type": "string" + } + }, + "snyk-version-served": { + "schema": { + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } } }, - "summary": "Retrieve a list of assignments for an organization (Early Access)", + "summary": "Create a new test. (Early Access)", "tags": [ - "Learn assignment" + "Tests" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-13~beta" + "2024-10-15~beta" ], - "x-snyk-api-resource": "assignments", + "x-snyk-api-resource": "tests", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-13~beta", - "x-snyk-documentation": { - "category": "learn" - }, + "x-snyk-api-version": "2024-10-15~beta", "x-stability-level": "beta" - }, - "patch": { - "description": "Allows an admin to update the due date for existing assignments within their organization.\n\n#### Required permissions\n\n- `Edit assignments (org.learn_assignment.edit)`", - "operationId": "updateOrgAssignments", + } + }, + "/orgs/{org_id}/tests/{test_id}": { + "get": { + "description": "Get a test.\n\nA Test returned through this endpoint is intended to\nbe a completed Test with results. The data returned through\nthis endpoint does not contain the Findings for the Test, but\na description of the Test that was run and its status.\n\nTests that completed successfully are marked with an appropriate\noutcome according to the configured Thresholds.\n\nFacts about the Test (e.g. how many dependencies were present in\na Tested SBOM) are attached to this response as well as a summary\nof the Findings uncovered during the Test.\n\nAny Errors or Warnings that occurred during the Test will be present in the\nresponse from this endpoint.\n\nThe response will also contain a link to the first page of the Test's\nFindings.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "getTest", "parameters": [ { - "description": "The unique identifier of the organization.", + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" + }, + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" + }, + { + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" + }, + { + "description": "Snyk Org ID under which to run or query information\nabout a Job or Test.", "in": "path", "name": "org_id", "required": true, @@ -39987,232 +83502,180 @@ } }, { - "$ref": "#/components/parameters/ApiVersion" + "$ref": "#/components/parameters/TestIdParam" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/UpdateAssignmentsPayload" + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/TestData" + }, + "jsonapi": { + "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" + }, + "links": { + "additionalProperties": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" }, - "id": { - "format": "uuid", - "type": "string" + "properties": { + "related": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + }, + "self": { + "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + } }, - "type": { - "$ref": "#/components/schemas/Types" - } + "type": "object" }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" + "meta": { + "$ref": "#/components/schemas/io.snyk.api.common.Meta" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } } - } - }, - "required": true - }, - "responses": { - "204": { - "description": "Assignments due date was successfully updated.", + }, + "description": "Successful API response with a single resource", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "schema": { + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "schema": { + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update due date for assignments in an organization. (Early Access)", - "tags": [ - "Learn assignment" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "assignments", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-snyk-documentation": { - "category": "learn" - }, - "x-stability-level": "beta" - }, - "post": { - "description": "Allows an admin to create assignments in bulk for all or a subset of users within their organization.\n\n#### Required permissions\n\n- `Create assignments (org.learn_assignment.create)`", - "operationId": "createOrgAssignments", - "parameters": [ - { - "description": "The unique identifier of the organization.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/ApiVersion" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateAssignmentsPayload" + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + } } - } - }, - "required": true - }, - "responses": { - "204": { - "description": "Assignments were successfully created.", + }, + "description": "Invalid input", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "schema": { + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "schema": { + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Bulk creation of assignments for users in an organization. (Early Access)", + "summary": "Get a test. (Early Access)", "tags": [ - "Learn assignment" + "Tests" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-14~experimental", "2024-10-15~beta" ], - "x-snyk-api-resource": "assignments", + "x-snyk-api-resource": "tests", "x-snyk-api-stability": "beta", "x-snyk-api-version": "2024-10-15~beta", - "x-snyk-documentation": { - "category": "learn" - }, "x-stability-level": "beta" } }, - "/orgs/{org_id}/learn/progress/catalog": { + "/orgs/{org_id}/tests/{test_id}/findings": { "get": { - "description": "Retrieves aggregated counts of users' lesson or learning path statuses (completed, in progress, todo) across all catalog resources for an organization.\n\n#### Required permissions\n\n- `View Organization Snyk Learn Reports (org.learn_report.read)`", - "operationId": "getCatalogProgress", + "description": "List findings for a test.\n\nTest Findings are scanner-agnostic representations of\nvulnerabilities and organization-level policy breaches.\nWhen Snyk runs a Test, the results of that Test are\nformatted into Findings.\n\nThis endpoint returns pages of Findings associated with\na given Test ID. Findings are returned in sorted order by\nID, with page size equal to the provided Limit query parameter.\nPage size is 10 Findings by default if no parameter is provided.\n\nNote that the Findings returned from this endpoint are only the\nFindings that are _not_ suppressed by policy and are _not_\nin violation of a set Test threshold (like Severity or Risk Score).\n\nTo retrieve the next (or previous) page of Findings, utilize the\nNext and Prev links returned in the response.\n\n#### Required permissions\n\n- `View Organization (org.read)`", + "operationId": "listFindings", "parameters": [ { - "description": "The unique identifier of the organization.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" }, { - "$ref": "#/components/parameters/ApiVersion" + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" }, { - "$ref": "#/components/parameters/StartingAfter" + "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" }, { - "$ref": "#/components/parameters/EndingBefore" + "$ref": "#/components/parameters/io.snyk.api.request.PaginatedRequest.starting_after" }, { - "$ref": "#/components/parameters/Limit" + "$ref": "#/components/parameters/io.snyk.api.request.PaginatedRequest.ending_before" }, { - "description": "Filter by the learn catalog resource type", - "in": "query", - "name": "type", + "$ref": "#/components/parameters/io.snyk.api.request.PaginatedRequest.limit" + }, + { + "description": "Snyk Org ID under which to run or query information\nabout a Job or Test.", + "in": "path", + "name": "org_id", + "required": true, "schema": { - "default": "lesson", - "enum": [ - "learning_path", - "lesson" - ], + "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/Title" - }, - { - "$ref": "#/components/parameters/Cwes" - }, - { - "$ref": "#/components/parameters/Cves" + "$ref": "#/components/parameters/TestIdParam" } ], "responses": { @@ -40220,69 +83683,136 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/CatalogProgressResponse" + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/FindingData" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" + }, + "links": { + "$ref": "#/components/schemas/io.snyk.api.common.PaginatedLinks" + }, + "meta": { + "$ref": "#/components/schemas/io.snyk.api.common.Meta" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" } } }, - "description": "Organization reporting users overview", + "description": "Successful API response for a paginated collection.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "schema": { + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "schema": { + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "schema": { + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + } + } + }, + "description": "Invalid input", + "headers": { + "deprecation": { + "schema": { + "type": "string" + } + }, + "snyk-request-id": { + "schema": { + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "schema": { + "type": "string" + } + }, + "snyk-version-requested": { + "schema": { + "type": "string" + } + }, + "snyk-version-served": { + "schema": { + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "format": "date", + "type": "string" + } + } + } } }, - "summary": "Get collective learning progress (Early Access)", + "summary": "List findings for a test. (Early Access)", "tags": [ - "Learn progress" + "Findings" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ "2024-10-15~beta" ], - "x-snyk-api-resource": "progress", + "x-snyk-api-resource": "tests", "x-snyk-api-stability": "beta", "x-snyk-api-version": "2024-10-15~beta", - "x-snyk-documentation": { - "category": "learn" - }, "x-stability-level": "beta" } }, - "/orgs/{org_id}/learn/progress/users": { + "/orgs/{org_id}/users/{id}": { "get": { - "description": "Retrieves detailed learning progress status per user, including completion dates and history for each catalog resource.\n\n#### Required permissions\n\n- `View Organization Snyk Learn Reports (org.learn_report.read)`", - "operationId": "getUsersProgress", + "description": "Get a summary of user.\n\nNote that Service Accounts are not returned by this endpoint. Please use the Service Accounts endpoints.\n\n#### Required permissions\n\n- `View users (org.user.read)`", + "operationId": "getUser", "parameters": [ { - "description": "The unique identifier of the organization.", + "description": "The id of the org", "in": "path", "name": "org_id", "required": true, @@ -40292,53 +83822,17 @@ } }, { - "$ref": "#/components/parameters/ApiVersion" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "Filter by the learn catalog resource type", - "in": "query", - "name": "type", - "schema": { - "default": "lesson", - "enum": [ - "learning_path", - "lesson" - ], - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Title" - }, - { - "$ref": "#/components/parameters/Titles" - }, - { - "description": "Filter by progress status of the resources", - "in": "query", - "name": "status", + "description": "The id of the user", + "in": "path", + "name": "id", + "required": true, "schema": { - "enum": [ - "completed", - "inProgress" - ], + "format": "uuid", "type": "string" } }, { - "$ref": "#/components/parameters/Emails" - }, - { - "$ref": "#/components/parameters/CompletionInterval" + "$ref": "#/components/parameters/Version" } ], "responses": { @@ -40346,11 +83840,23 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/UsersProgressResponse" + "properties": { + "data": { + "$ref": "#/components/schemas/User" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + } + }, + "required": [ + "jsonapi", + "data" + ], + "type": "object" } } }, - "description": "Organization reporting users overview", + "description": "User details", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -40375,6 +83881,9 @@ "400": { "$ref": "#/components/responses/400" }, + "401": { + "$ref": "#/components/responses/401" + }, "403": { "$ref": "#/components/responses/403" }, @@ -40385,90 +83894,27 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get individual user learning progress (Early Access)", + "summary": "Get user by ID (Early Access)", "tags": [ - "Learn progress" + "Users" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2021-09-13~beta" ], - "x-snyk-api-resource": "progress", + "x-snyk-api-resource": "users", "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-snyk-documentation": { - "category": "learn" - }, + "x-snyk-api-version": "2021-09-13~beta", "x-stability-level": "beta" } }, - "/orgs/{org_id}/memberships": { + "/self": { "get": { - "description": "Returns all memberships of the org\n\n#### Required permissions\n\n- `View Organization Memberships (org.membership.read)`", - "operationId": "listOrgMemberships", + "description": "Retrieves information about the the user making the request.", + "operationId": "getSelf", "parameters": [ - { - "description": "The ID of the org", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, { "$ref": "#/components/parameters/Version" - }, - { - "description": "Which column to sort by.", - "in": "query", - "name": "sort_by", - "schema": { - "enum": [ - "username", - "user_display_name", - "email", - "login_method", - "role" - ], - "type": "string" - } - }, - { - "description": "Order in which results are returned.", - "example": "ASC", - "in": "query", - "name": "sort_order", - "schema": { - "default": "ASC", - "enum": [ - "ASC", - "DESC" - ], - "type": "string" - } - }, - { - "$ref": "#/components/parameters/EmailFilter" - }, - { - "$ref": "#/components/parameters/UserIdFilter" - }, - { - "$ref": "#/components/parameters/UsernameFilter" - }, - { - "$ref": "#/components/parameters/RoleFilter" } ], "responses": { @@ -40478,7 +83924,7 @@ "schema": { "properties": { "data": { - "$ref": "#/components/schemas/OrgMembershipResponseData" + "$ref": "#/components/schemas/Principal20240422" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -40496,7 +83942,7 @@ } } }, - "description": "List of org memberships is returned", + "description": "Current user is returned", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -40534,55 +83980,55 @@ "$ref": "#/components/responses/500" } }, - "summary": "Get all memberships of the org", + "summary": "My User Details", "tags": [ - "Orgs" + "Users" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-05-09~experimental", - "2024-08-25" + "2022-03-01~experimental", + "2022-09-14~experimental", + "2024-04-22" ], - "x-snyk-api-resource": "orgs", + "x-snyk-api-resource": "self", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2024-04-22", "x-stability-level": "stable" - }, - "post": { - "description": "Create a org membership for a user with role\n\n#### Required permissions\n\n- `Add Organization Memberships (org.membership.add)`", - "operationId": "createOrgMembership", + } + }, + "/self/access_requests": { + "get": { + "description": "Get a list of user's access requests", + "operationId": "getAccessRequests", "parameters": [ { - "description": "The ID of the org", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/OrgIdFilter" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateOrgMembershipRequestBody20240825" - } - } - } - }, "responses": { - "201": { + "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/OrgMembership" + "items": { + "$ref": "#/components/schemas/AccessRequest" + }, + "type": "array" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" @@ -40591,18 +84037,20 @@ "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "data", + "links" + ], "type": "object" } } }, - "description": "Membership for the user is created on the org", + "description": "A list of access requests are returned", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -40632,53 +84080,73 @@ "404": { "$ref": "#/components/responses/404" }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Create a org membership for a user with role", + "summary": "Get access requests (Early Access)", "tags": [ - "Orgs" + "AccessRequests" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-05-09~experimental", - "2024-08-25" + "2023-12-01~experimental", + "2023-12-21~beta" ], - "x-snyk-api-resource": "orgs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", - "x-stability-level": "stable" + "x-snyk-api-resource": "self", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2023-12-21~beta", + "x-stability-level": "beta" } }, - "/orgs/{org_id}/memberships/{membership_id}": { - "delete": { - "description": "Remove a user's membership of the group.\n\n#### Required permissions\n\n- `Delete Organization Memberships (org.membership.delete)`", - "operationId": "deleteOrgMembership", + "/self/apps": { + "get": { + "description": "Get a list of Snyk Apps that can act on your behalf", + "operationId": "getUserInstalledApps", "parameters": [ { - "description": "The id of the org", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/OrgMembershipId" + "$ref": "#/components/parameters/StartingAfter" }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" } ], "responses": { - "204": { - "description": "Org membership for the user was successfully deleted.", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/PublicApp" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of apps install that can act on your behalf", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -40701,76 +84169,102 @@ } }, "400": { - "$ref": "#/components/responses/400" + "$ref": "#/components/responses/400__0" }, "401": { - "$ref": "#/components/responses/401" + "$ref": "#/components/responses/401__0" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500" + "$ref": "#/components/responses/500__0" } }, - "summary": "Remove user's org membership", + "summary": "Get a list of Snyk Apps that can act on your behalf", "tags": [ - "Orgs" + "Apps" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-06-06~experimental", - "2024-08-25" + "2022-03-11" ], - "x-snyk-api-resource": "org_memberships", + "x-snyk-api-resource": "user_app_installs", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2022-03-11", "x-stability-level": "stable" - }, - "patch": { - "description": "Update a org membership for a user with role\n\n#### Required permissions\n\n- `Edit Organization Memberships (org.membership.edit)`", - "operationId": "updateOrgMembership", + } + }, + "/self/apps/installs": { + "get": { + "description": "Get a list of Snyk Apps installed for a user", + "operationId": "getAppInstallsForUser", "parameters": [ { - "description": "The id of the org", - "in": "path", - "name": "org_id", - "required": true, + "description": "Expand relationships.", + "explode": false, + "in": "query", + "name": "expand", "schema": { - "format": "uuid", - "type": "string" - } + "items": { + "enum": [ + "app" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" }, { - "$ref": "#/components/parameters/OrgMembershipId" + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/StartingAfter" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/Limit" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/UpdateOrgMembershipRequestBody20240825" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - } - }, "responses": { - "204": { - "description": "The Membership is updated", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/AppInstallData" + }, + "type": "array" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/PaginatedLinks" + } + }, + "required": [ + "data", + "jsonapi", + "links" + ], + "type": "object" + } + } + }, + "description": "A list of apps installed for the specified organization.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -40793,84 +84287,63 @@ } }, "400": { - "$ref": "#/components/responses/400" + "$ref": "#/components/responses/400__0" }, "401": { - "$ref": "#/components/responses/401" + "$ref": "#/components/responses/401__0" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/responses/404__0" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500" + "$ref": "#/components/responses/500__0" } }, - "summary": "Update a org membership for a user with role", + "summary": "Get a list of Snyk Apps installed for a user", "tags": [ - "Orgs" + "Apps" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-06-06~experimental", - "2024-08-25" + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" ], - "x-snyk-api-resource": "org_memberships", + "x-snyk-api-resource": "app_installs", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-25", + "x-snyk-api-version": "2024-05-23", "x-stability-level": "stable" } }, - "/orgs/{org_id}/packages/issues": { - "post": { - "description": "This endpoint is currently restricted and is not available to all customers. Query issues for a batch of packages identified by Package URL (purl). Only direct vulnerabilities are returned; transitive vulnerabilities (from dependencies) are not included as they can vary depending on the context.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "listIssuesForManyPurls", + "/self/apps/installs/{install_id}": { + "delete": { + "description": "Revoke a Snyk App by install ID", + "operationId": "deleteUserAppInstallById", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Unique identifier for an organization", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/InstallId" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/BulkPackageUrlsRequestBody" - } - } - }, - "required": true - }, "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/IssuesWithPurlsResponse" - } - } - }, - "description": "Returns an array of issues with the purl identifier of the package that caused them", + "204": { + "description": "The Snyk App install is revoked, with no content (no errors).", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, "location": { - "$ref": "#/components/headers/Location" + "schema": { + "type": "string" + } }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" @@ -40890,98 +84363,64 @@ } }, "400": { - "$ref": "#/components/responses/400" + "$ref": "#/components/responses/400__0" }, "401": { - "$ref": "#/components/responses/401" + "$ref": "#/components/responses/401__0" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/responses/404__0" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500" + "$ref": "#/components/responses/500__0" } }, - "summary": "List issues for a given set of packages (Currently not available to all customers)", + "summary": "Revoke a Snyk App by install ID", "tags": [ - "Issues" + "Apps" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-01-04~experimental", - "2023-03-29~beta", - "2023-04-17", - "2023-08-21", - "2024-06-26", - "2025-11-05" + "2023-06-19~experimental", + "2023-11-03", + "2024-05-23" ], - "x-snyk-api-resource": "issues", + "x-snyk-api-resource": "app_installs", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2025-11-05", + "x-snyk-api-version": "2024-05-23", "x-stability-level": "stable" } }, - "/orgs/{org_id}/packages/{purl}/issues": { - "get": { - "description": "Query issues for a specific package version identified by Package URL (purl). Snyk returns only direct vulnerabilities. Transitive vulnerabilities (from dependencies) are not returned because they can vary depending on context. For Maven packages, you can optionally include a checksum qualifier in the PURL to request checksum validation. The response will include metadata indicating whether the provided checksum matches Snyk's records. Vulnerabilities are always returned regardless of checksum match status; the validation metadata allows clients to interpret results appropriately.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getIssuesPerPurl", + "/self/apps/{app_id}": { + "delete": { + "description": "Revoke access for an app by app id", + "operationId": "revokeUserInstalledApp", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/PackageUrl" - }, - { - "description": "Unique identifier for an organization", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Specify the number of results to skip before returning results. Must be greater than or equal to 0. Default is 0.", - "in": "query", - "name": "offset", - "schema": { - "minimum": 0, - "type": "integer" - } - }, - { - "description": "Specify the number of results to return. Must be greater than 0 and less than 1000. Default is 1000.", - "in": "query", - "name": "limit", - "schema": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - } + "$ref": "#/components/parameters/AppId" } ], "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/IssuesResponse" - } - } - }, - "description": "Returns an array of issues", + "204": { + "description": "Access to the Snyk App is revoked, with no content (no errors).", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "schema": { + "type": "string" + } + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -41000,45 +84439,42 @@ } }, "400": { - "$ref": "#/components/responses/400" + "$ref": "#/components/responses/400__0" }, "401": { - "$ref": "#/components/responses/401" + "$ref": "#/components/responses/401__0" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/responses/404__0" }, "409": { "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500" + "$ref": "#/components/responses/500__0" } }, - "summary": "List issues for a package", + "summary": "Revoke a Snyk App by app ID", "tags": [ - "Issues" + "Apps" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-06-29~beta", - "2022-09-15", - "2024-06-26", - "2025-11-05" + "2022-03-11" ], - "x-snyk-api-resource": "issues", + "x-snyk-api-resource": "user_app_installs", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2025-11-05", + "x-snyk-api-version": "2022-03-11", "x-stability-level": "stable" } }, - "/orgs/{org_id}/policies": { + "/self/apps/{app_id}/sessions": { "get": { - "description": "Get all policies for the requested organisation.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `View Ignores (org.project.ignore.read)`", - "operationId": "getOrgPolicies", + "description": "Get a list of active OAuth sessions by app ID", + "operationId": "getUserAppSessions", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -41053,55 +84489,7 @@ "$ref": "#/components/parameters/Limit" }, { - "$ref": "#/components/parameters/Search" - }, - { - "$ref": "#/components/parameters/OrderBy" - }, - { - "$ref": "#/components/parameters/OrderDirection" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Review" - }, - { - "description": "Select only policies with an expiry strictly before the given time.", - "in": "query", - "name": "expires_before", - "schema": { - "example": "2024-03-16T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - { - "description": "Select only policies with an expiry strictly past the given time.", - "in": "query", - "name": "expires_after", - "schema": { - "example": "2024-03-16T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - { - "description": "Select only policies that never expire.", - "in": "query", - "name": "expires_never", - "schema": { - "example": true, - "type": "boolean" - } + "$ref": "#/components/parameters/AppId" } ], "responses": { @@ -41113,7 +84501,7 @@ "properties": { "data": { "items": { - "$ref": "#/components/schemas/PolicyResponse" + "$ref": "#/components/schemas/SessionData" }, "type": "array" }, @@ -41125,14 +84513,14 @@ } }, "required": [ - "jsonapi", - "data" + "data", + "jsonapi" ], "type": "object" } } }, - "description": "The policies for the requested organisation.", + "description": "Attributes identifying the active OAuth sessions.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -41155,42 +84543,54 @@ } }, "400": { - "$ref": "#/components/responses/400" + "$ref": "#/components/responses/400__0" }, "401": { - "$ref": "#/components/responses/401" + "$ref": "#/components/responses/401__0" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500__0" } }, - "summary": "Get org-level policies", + "summary": "Get a list of active OAuth sessions by app ID", "tags": [ - "Policies" + "Apps" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2023-03-30~experimental", + "2023-11-03" ], - "x-snyk-api-resource": "policies", + "x-snyk-api-resource": "sessions", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", + "x-snyk-api-version": "2023-11-03", "x-stability-level": "stable" - }, - "post": { - "description": "Create a new org-level policy.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `Create Ignores (org.project.ignore.create)`", - "operationId": "createOrgPolicy", + } + }, + "/self/apps/{app_id}/sessions/{session_id}": { + "delete": { + "description": "Revoke the Snyk App session of an active user", + "operationId": "revokeUserAppSession", "parameters": [ { "$ref": "#/components/parameters/Version" }, { - "description": "Org ID", + "$ref": "#/components/parameters/AppId" + }, + { + "description": "Session ID", "in": "path", - "name": "org_id", + "name": "session_id", "required": true, "schema": { "format": "uuid", @@ -41198,41 +84598,9 @@ } } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreatePolicyPayload" - } - } - } - }, "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/PolicyResponse" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "required": [ - "jsonapi", - "data" - ], - "type": "object" - } - } - }, - "description": "A single policy is returned if it is successfully created.", + "204": { + "description": "The user app sessions has been revoked.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -41260,109 +84628,55 @@ } }, "400": { - "$ref": "#/components/responses/400" + "$ref": "#/components/responses/400__0" }, "401": { - "$ref": "#/components/responses/401" + "$ref": "#/components/responses/401__0" }, "403": { "$ref": "#/components/responses/403" }, "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/responses/404__0" + }, + "409": { + "$ref": "#/components/responses/409" }, "500": { - "$ref": "#/components/responses/500" + "$ref": "#/components/responses/500__0" } }, - "summary": "Create a new org-level policy", + "summary": "Revoke the Snyk App session of an active user", "tags": [ - "Policies" + "Apps" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2023-03-30~experimental", + "2023-11-03" ], - "x-snyk-api-resource": "policies", + "x-snyk-api-resource": "sessions", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", + "x-snyk-api-version": "2023-11-03", "x-stability-level": "stable" } }, - "/orgs/{org_id}/policies/{policy_id}": { - "delete": { - "description": "Delete an existing org-level policy.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `Remove Ignores (org.project.ignore.delete)`", - "operationId": "deleteOrgPolicy", + "/self/personal_access_tokens": { + "get": { + "description": "List personal access tokens", + "operationId": "listPersonalAccessToken", "parameters": [ { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/EndingBefore" }, { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Limit" }, { - "$ref": "#/components/parameters/PolicyId" - } - ], - "responses": { - "204": { - "$ref": "#/components/responses/204" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" + "$ref": "#/components/parameters/StartingAfter" }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Delete an org-level policy", - "tags": [ - "Policies" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15" - ], - "x-snyk-api-resource": "policies", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - }, - "get": { - "description": "Get a specific org-level policy based on its ID.\n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `View Ignores (org.project.ignore.read)`", - "operationId": "getOrgPolicy", - "parameters": [ { "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/PolicyId" } ], "responses": { @@ -41373,28 +84687,85 @@ "additionalProperties": false, "properties": { "data": { - "$ref": "#/components/schemas/PolicyResponse" + "items": { + "additionalProperties": false, + "properties": { + "attributes": { + "properties": { + "created_at": { + "$ref": "#/components/schemas/PersonalAccessTokenCreatedAt" + }, + "expires_at": { + "$ref": "#/components/schemas/PersonalAccessTokenExpiresAt" + }, + "label": { + "$ref": "#/components/schemas/PersonalAccessTokenLabel" + }, + "tenant_id": { + "$ref": "#/components/schemas/PatTenantId" + } + }, + "required": [ + "created_at", + "expires_at", + "label" + ], + "type": "object" + }, + "id": { + "$ref": "#/components/schemas/PersonalAccessTokenId" + }, + "type": { + "$ref": "#/components/schemas/PersonalAccessTokenType" + } + }, + "required": [ + "id", + "attributes", + "type" + ], + "type": "object" + }, + "type": "array" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" + "$ref": "#/components/schemas/PaginatedLinks" + }, + "meta": { + "properties": { + "max_active_tokens": { + "type": "integer" + }, + "max_expiry_days": { + "type": "integer" + } + }, + "required": [ + "max_active_tokens", + "max_expiry_days" + ], + "type": "object" } }, "required": [ - "jsonapi", - "data" + "data", + "meta" ], "type": "object" } } }, - "description": "The requested policy.", + "description": "Return the personal access tokens associated with the calling principal", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "$ref": "#/components/headers/RequestIdResponseHeader" }, @@ -41423,102 +84794,40 @@ }, "404": { "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Get an org-level policy", + "summary": "List personal access tokens", "tags": [ - "Policies" + "PersonalAccessToken" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2024-03-19" ], - "x-snyk-api-resource": "policies", + "x-snyk-api-resource": "pats", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", + "x-snyk-api-version": "2024-03-19", "x-stability-level": "stable" - }, - "patch": { - "description": "Update the org-level policy. \n\n*Org level Policy APIs Access Notice:* Org level Policy APIs are only available \nfor use with Code Consistent Ignores. For information about how to enable Code Consistent Ignores \nsee [this](https://docs.snyk.io/manage-risk/prioritize-issues-for-fixing/ignore-issues/consistent-ignores-for-snyk-code#enable-snyk-code-consistent-ignores) \ndocumentation.\n\n#### Required permissions\n\n- `Edit Ignores (org.project.ignore.edit)`", - "operationId": "updateOrgPolicy", + } + }, + "/self/personal_access_tokens/{personal_access_token_id}": { + "delete": { + "description": "Delete a personal access token", + "operationId": "deletePersonalAccessToken", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/PersonalAccessTokenId" }, { - "$ref": "#/components/parameters/PolicyId" + "$ref": "#/components/parameters/Version" } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/UpdatePolicyPayload" - } - } - } - }, "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/PolicyResponse" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "required": [ - "jsonapi", - "data" - ], - "type": "object" - } - } - }, - "description": "A single policy is returned if it is successfully updated.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "schema": { - "type": "string" - } - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } + "204": { + "$ref": "#/components/responses/204" }, "400": { "$ref": "#/components/responses/400" @@ -41534,26 +84843,29 @@ }, "409": { "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Update an org-level policy", + "summary": "Deletes a personal access token", "tags": [ - "Policies" + "PersonalAccessToken" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15" + "2024-03-19" ], - "x-snyk-api-resource": "policies", + "x-snyk-api-resource": "pats", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", + "x-snyk-api-version": "2024-03-19", "x-stability-level": "stable" } }, - "/orgs/{org_id}/policies/{policy_id}/events": { + "/tenants": { "get": { - "description": "Retrieve the event history for the given policy.\n\n*Org level Policy APIs Access Notice:* Access to our Org level Policy APIs is currently\nrestricted via \"snykCodeConsistentIgnores\" and \"ignoreApprovalWorkflow\" feature flags\nand will result in a 403 Forbidden error without the flag enabled. Please contact your\naccount representative for eligibility requirements.\n\n#### Required permissions\n\n- `View Ignores (org.project.ignore.read)`", - "operationId": "getOrgPolicyEvents", + "description": "Get a list of all Tenants which the calling user is a member of", + "operationId": "listTenants", "parameters": [ { "$ref": "#/components/parameters/Version" @@ -41568,17 +84880,12 @@ "$ref": "#/components/parameters/Limit" }, { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, + "description": "Only return tenants whose name contains this value.", + "in": "query", + "name": "name", "schema": { - "format": "uuid", "type": "string" } - }, - { - "$ref": "#/components/parameters/PolicyId" } ], "responses": { @@ -41590,7 +84897,7 @@ "properties": { "data": { "items": { - "$ref": "#/components/schemas/PolicyEventResponse" + "$ref": "#/components/schemas/TenantResponseData" }, "type": "array" }, @@ -41602,14 +84909,15 @@ } }, "required": [ + "data", "jsonapi", - "data" + "links" ], "type": "object" } } }, - "description": "The requested policy.", + "description": "Returns a list of tenants.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -41642,305 +84950,39 @@ }, "404": { "$ref": "#/components/responses/404" + }, + "409": { + "$ref": "#/components/responses/409" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "List org policy events (Early Access)", + "summary": "Get a list of all accessible Tenants", "tags": [ - "Policies" + "Tenants" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-13~beta" + "2024-04-11~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "policyevents", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-13~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "tenants", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-stability-level": "stable" } }, - "/orgs/{org_id}/projects": { + "/tenants/{tenant_id}": { "get": { - "description": "List all Projects for an Org.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", - "operationId": "listOrgProjects", + "description": "Get the full details of a Tenant.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getTenant", "parameters": [ - { - "description": "The ID of the org that the projects belong to.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Return projects that belong to the provided targets", - "in": "query", - "name": "target_id", - "schema": { - "items": { - "format": "uuid", - "type": "string" - }, - "type": "array" - } - }, - { - "description": "Return projects that match the provided target reference", - "in": "query", - "name": "target_reference", - "schema": { - "type": "string" - } - }, - { - "description": "Return projects that match the provided target file", - "in": "query", - "name": "target_file", - "schema": { - "type": "string" - } - }, - { - "description": "Return projects that match the provided target runtime", - "in": "query", - "name": "target_runtime", - "schema": { - "type": "string" - } - }, - { - "description": "The collection count.", - "in": "query", - "name": "meta_count", - "schema": { - "enum": [ - "only" - ], - "type": "string" - } - }, - { - "description": "Return projects that match the provided IDs.", - "explode": false, - "in": "query", - "name": "ids", - "schema": { - "items": { - "format": "uuid", - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match the provided names.", - "explode": false, - "in": "query", - "name": "names", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects with names starting with the specified prefix.", - "explode": false, - "in": "query", - "name": "names_start_with", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match the provided origins.", - "explode": false, - "in": "query", - "name": "origins", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match the provided types.", - "explode": false, - "in": "query", - "name": "types", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "target" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Include a summary count for the issues found in the most recent scan of this project", - "in": "query", - "name": "meta.latest_issue_counts", - "schema": { - "type": "boolean" - } - }, - { - "description": "Include the total number of dependencies found in the most recent scan of this project", - "in": "query", - "name": "meta.latest_dependency_total", - "schema": { - "type": "boolean" - } - }, - { - "description": "Filter projects uploaded and monitored before this date (encoded value)", - "example": "2021-05-29T09:50:54.014Z", - "in": "query", - "name": "cli_monitored_before", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "Filter projects uploaded and monitored after this date (encoded value)", - "example": "2021-05-29T09:50:54.014Z", - "in": "query", - "name": "cli_monitored_after", - "schema": { - "format": "date-time", - "type": "string" - } - }, - { - "description": "Return projects that match the provided importing user public ids.", - "explode": false, - "in": "query", - "name": "importing_user_public_id", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match all the provided tags", - "example": [ - "key1:value1", - "key2:value2" - ], - "explode": false, - "in": "query", - "name": "tags", - "schema": { - "items": { - "pattern": "^[a-zA-Z0-9_-]+:[:/?#@\u0026+=%a-zA-Z0-9_.~-]+$", - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match all the provided business_criticality value", - "explode": false, - "in": "query", - "name": "business_criticality", - "schema": { - "items": { - "enum": [ - "critical", - "high", - "medium", - "low" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match all the provided environment values", - "explode": false, - "in": "query", - "name": "environment", - "schema": { - "items": { - "enum": [ - "frontend", - "backend", - "internal", - "external", - "mobile", - "saas", - "onprem", - "hosted", - "distributed" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return projects that match all the provided lifecycle values", - "explode": false, - "in": "query", - "name": "lifecycle", - "schema": { - "items": { - "enum": [ - "production", - "development", - "sandbox" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, { "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" + "$ref": "#/components/parameters/TenantId20240411" } ], "responses": { @@ -41951,79 +84993,20 @@ "additionalProperties": false, "properties": { "data": { - "items": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/ProjectAttributes" - }, - "id": { - "description": "Resource ID.", - "format": "uuid", - "type": "string" - }, - "meta": { - "additionalProperties": false, - "properties": { - "cli_monitored_at": { - "description": "The date that the project was last uploaded and monitored using cli.", - "example": "2021-05-29T09:50:54.014Z", - "format": "date-time", - "nullable": true, - "type": "string" - }, - "latest_dependency_total": { - "$ref": "#/components/schemas/LatestDependencyTotal" - }, - "latest_issue_counts": { - "$ref": "#/components/schemas/LatestIssueCounts" - } - }, - "type": "object" - }, - "relationships": { - "$ref": "#/components/schemas/ProjectRelationships" - }, - "type": { - "description": "The Resource type.", - "example": "project", - "type": "string" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" - }, - "type": "array" + "$ref": "#/components/schemas/TenantResponseData" }, "jsonapi": { "$ref": "#/components/schemas/JsonApi" }, "links": { - "$ref": "#/components/schemas/Links" - }, - "meta": { - "properties": { - "count": { - "minimum": 0, - "type": "number" - } - }, - "type": "object" + "$ref": "#/components/schemas/SelfLink" } }, - "required": [ - "jsonapi", - "links" - ], "type": "object" } } }, - "description": "A list of projects is returned for the targeted org", + "description": "Returns an instance of a tenant.", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -42057,63 +85040,109 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "List all Projects for an Org with the given Org ID.", + "summary": "Get a single Tenant by ID", "tags": [ - "Projects" + "Tenants" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2021-06-04~beta", - "2022-08-12~experimental", - "2022-12-21~experimental", - "2023-02-15", - "2023-08-28", - "2023-09-11", - "2023-11-06", - "2024-05-31" + "2024-04-11~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "projects", + "x-snyk-api-resource": "tenants", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/projects/{project_id}": { - "delete": { - "description": "Delete one project in the organization by project ID.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `Remove Projects (org.project.delete)`", - "operationId": "deleteOrgProject", + }, + "patch": { + "description": "Update the details of a tenant\n\n#### Required permissions\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateTenant", "parameters": [ { - "description": "The ID of the org to which the project belongs to.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The ID of the project.", - "in": "path", - "name": "project_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/Version" }, { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/TenantId20240411" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "properties": { + "data": { + "additionalProperties": false, + "properties": { + "attributes": { + "$ref": "#/components/schemas/TenantUpdateAttributes" + }, + "id": { + "format": "uuid", + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + } + }, "responses": { - "204": { - "description": "The project has been deleted", + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "properties": { + "data": { + "additionalProperties": false, + "description": "tenant resource object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/TenantAttributes" + }, + "id": { + "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", + "format": "uuid", + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/Types" + } + }, + "required": [ + "id", + "type" + ], + "type": "object" + }, + "jsonapi": { + "$ref": "#/components/schemas/JsonApi" + }, + "links": { + "$ref": "#/components/schemas/SelfLink" + } + }, + "type": "object" + } + } + }, + "description": "Instance of tenant is updated", "headers": { "deprecation": { "$ref": "#/components/headers/DeprecationHeader" @@ -42135,6 +85164,9 @@ } } }, + "204": { + "$ref": "#/components/responses/204" + }, "400": { "$ref": "#/components/responses/400" }, @@ -42147,579 +85179,880 @@ "404": { "$ref": "#/components/responses/404" }, + "409": { + "$ref": "#/components/responses/409" + }, "500": { "$ref": "#/components/responses/500" } }, - "summary": "Delete project by project ID.", + "summary": "Update tenant", "tags": [ - "Projects" + "Tenants" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-11-06", - "2024-05-31" + "2024-04-11~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "projects", + "x-snyk-api-resource": "tenants", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", + "x-snyk-api-version": "2024-10-15", "x-stability-level": "stable" - }, + } + }, + "/tenants/{tenant_id}/brokers/connections/{connection_id}/integrations": { "get": { - "description": "Get one project of the organization by project ID.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", - "operationId": "getOrgProject", + "description": "Get all integrations using the Broker connection\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getBrokerConnectionIntegrations", "parameters": [ { - "description": "The ID of the org to which the project belongs to.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/TenantId" }, { - "description": "The ID of the project.", - "in": "path", - "name": "project_id", + "$ref": "#/components/parameters/ConnectionId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "target" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" + "$ref": "#/components/parameters/EndingBefore" }, { - "description": "Include a summary count for the issues found in the most recent scan of this project", - "in": "query", - "name": "meta.latest_issue_counts", - "schema": { - "type": "boolean" - } + "$ref": "#/components/parameters/StartingAfter" }, { - "description": "Include the total number of dependencies found in the most recent scan of this project", + "description": "Number of results to return per page", + "example": 10, "in": "query", - "name": "meta.latest_dependency_total", + "name": "limit", "schema": { - "type": "boolean" + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" } - }, - { - "$ref": "#/components/parameters/Version" } ], "responses": { "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerConnectionIntegrationsResponse" + } + } + }, + "description": "Returns a list of Integration IDs", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/ProjectAttributes" - }, - "id": { - "description": "The Resource ID.", - "format": "uuid", - "type": "string" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" }, - "meta": { - "additionalProperties": false, - "properties": { - "cli_monitored_at": { - "description": "The date that the project was last uploaded and monitored using cli.", - "example": "2021-05-29T09:50:54.014Z", - "format": "date-time", - "nullable": true, - "type": "string" + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" }, - "latest_dependency_total": { - "$ref": "#/components/schemas/LatestDependencyTotal" + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } }, - "latest_issue_counts": { - "$ref": "#/components/schemas/LatestIssueCounts" - } + "type": "object" }, - "type": "object" - }, - "relationships": { - "$ref": "#/components/schemas/ProjectRelationships" + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "description": "The Resource type.", - "example": "project", + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, "required": [ - "id", - "type", - "attributes" + "version" ], "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "A project is returned for the targeted org", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get project by project ID.", - "tags": [ - "Projects" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-02-01~experimental", - "2022-08-12~experimental", - "2022-12-21~experimental", - "2023-02-15", - "2023-08-28", - "2023-09-11", - "2023-11-06", - "2024-05-31" - ], - "x-snyk-api-resource": "projects", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" - }, - "patch": { - "description": "Updates one project of the organization by project ID.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `View Projects (org.project.read)`\n\n- `Edit Projects (org.project.edit)`", - "operationId": "updateOrgProject", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The ID of the Org the project belongs to.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The ID of the project to patch.", - "in": "path", - "name": "project_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "target" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/PatchProjectRequest" - } - } - }, - "description": "The project attributes to be updated." - }, - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/ProjectAttributes" - }, - "id": { - "description": "The Resource ID.", - "example": "331ede0a-de94-456f-b788-166caeca58bf", - "format": "uuid", - "type": "string" - }, - "links": { - "$ref": "#/components/schemas/Links" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" }, - "meta": { - "additionalProperties": false, - "properties": { - "cli_monitored_at": { - "description": "The date that the project was last uploaded and monitored using cli.", - "example": "2021-05-29T09:50:54.014Z", - "format": "date-time", - "nullable": true, - "type": "string" - } + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" }, - "type": "object" - }, - "relationships": { - "$ref": "#/components/schemas/ProjectRelationships" + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "description": "The Resource type.", - "example": "project", + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, "required": [ - "type", - "id", - "attributes" + "version" ], "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "A project is updated for the targeted org", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Updates project by project ID.", - "tags": [ - "Projects" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-12-21~experimental", - "2023-02-15", - "2023-08-28", - "2023-09-11", - "2023-11-06", - "2024-05-31" - ], - "x-snyk-api-resource": "projects", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-31", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/projects/{project_id}/fix_pull_requests": { - "post": { - "description": "Creates a Snyk Fix pull-request asynchronously and responds with a remediation job ID that can be used to check the status and result.\n\n#### Required permissions\n\n- `org.org.project.pr.create`", - "operationId": "createFixPullRequest", - "parameters": [ - { - "description": "Org ID", - "example": "7626925e-4b0f-11ee-be56-0242ac120002", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Project ID", - "example": "7626925e-4b0f-11ee-be56-0242ac120002", - "in": "path", - "name": "project_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "issue_ids": { - "$ref": "#/components/schemas/IssueIds" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "type", - "issue_ids" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "required": true - }, - "responses": { - "202": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "description": "Remediation job response", - "properties": { - "attributes": { - "properties": { - "created_at": { - "description": "The timestamp when the job was created", - "example": "2024-10-29T12:00:00Z", - "format": "date-time", - "type": "string" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } }, - "status": { - "description": "The current status of the remediation job", - "enum": [ - "STARTED", - "FINISHED", - "ERRORED" - ], - "example": "STARTED", - "type": "string" - } + "type": "object" }, - "required": [ - "created_at", - "status" - ], - "type": "object" + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "id": { - "description": "The unique identifier for the remediation job", - "example": "7626925e-4b0f-11ee-be56-0242ac120002", - "format": "uuid", + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" - }, - "type": { - "$ref": "#/components/schemas/Types" } }, "required": [ - "id", - "type", - "attributes" + "version" ], "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Fix pull request job accepted for processing", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { - "content-location": { - "$ref": "#/components/headers/LocationHeader" - }, "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Creates a Snyk Fix PR. This feature is currently in experimental phase and access is restricted behind the \"apiFixPrCreation\" feature flag. (Early Access)", + "summary": "Get Integrations using the current Broker connection", "tags": [ - "Fix Pull Requests" + "BrokerConnections" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "fix-pull-requests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" } }, - "/orgs/{org_id}/projects/{project_id}/sbom": { - "get": { - "description": "This endpoint lets you retrieve the SBOM document of a software project.\nIt supports the following formats:\n* CycloneDX version 1.6 in JSON (set `format` to `cyclonedx1.6+json`).\n* CycloneDX version 1.6 in XML (set `format` to `cyclonedx1.6+xml`).\n* CycloneDX version 1.5 in JSON (set `format` to `cyclonedx1.5+json`).\n* CycloneDX version 1.5 in XML (set `format` to `cyclonedx1.5+xml`).\n* CycloneDX version 1.4 in JSON (set `format` to `cyclonedx1.4+json`).\n* CycloneDX version 1.4 in XML (set `format` to `cyclonedx1.4+xml`).\n* SPDX version 2.3 in JSON (set `format` to `spdx2.3+json`).\n\nBy default it will respond with an empty JSON:API response.\n\n#### Required permissions\n\n- `View Project history (org.project.snapshot.read)`", - "operationId": "getSbom", + "/tenants/{tenant_id}/brokers/connections/{connection_id}/orgs/{org_id}/integration": { + "post": { + "description": "Configures integrations to use the Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "createBrokerConnectionIntegration", "parameters": [ { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/TenantId" }, { - "description": "Unique identifier for an organization", + "$ref": "#/components/parameters/ConnectionId" + }, + { + "description": "Org ID", "in": "path", "name": "org_id", "required": true, @@ -42729,819 +86062,1074 @@ } }, { - "description": "Unique identifier for a project", - "in": "path", - "name": "project_id", + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } - }, - { - "$ref": "#/components/parameters/Format" - }, - { - "$ref": "#/components/parameters/Exclude" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateBrokerConnectionIntegration" + } + } + } + }, "responses": { - "200": { + "201": { "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SbomDocument" - } - }, "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/SbomResponse" - } - }, - "application/vnd.cyclonedx+json": { - "schema": { - "$ref": "#/components/schemas/SbomDocument" - } - }, - "application/vnd.cyclonedx+xml": { - "schema": { - "$ref": "#/components/schemas/SbomDocument" + "$ref": "#/components/schemas/GetBrokerConnectionIntegrationResponse" } } }, - "description": "Returns the SBOM document of a project", + "description": "Configured integrations to use broker connection successfully", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "location": { + "$ref": "#/components/headers/LocationHeader" }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get a project’s SBOM document", - "tags": [ - "SBOM" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-03-31~experimental", - "2022-12-06~beta", - "2023-03-20", - "2024-03-12~experimental", - "2024-08-15~beta", - "2024-08-22" - ], - "x-snyk-api-resource": "sboms", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-08-22", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/sbom_tests": { - "post": { - "description": "Create an SBOM test run by supplying an SBOM document. The components contained in the given document will get analyzed for known vulnerabilities. In order for component identification to be successful, they must have a PackageURL (purl) of a supported purl type assigned. Analysis will be skipped for any component that does not fulfill this requirement.\nSupported SBOM formats: CycloneDX 1.4 JSON, CycloneDX 1.5 JSON, CycloneDX 1.6 JSON, SPDX 2.3 JSON\nSupported purl types: apk, cargo, cocoapods, composer, conan, deb, gem, generic, golang, hex, maven, npm, nuget, pub, pypi, rpm, swift\n\n#### Required permissions\n\n- `Test Projects (org.project.test)`", - "operationId": "createSbomTestRun", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/SbomTestCreateAttributes" + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, - "type": { - "$ref": "#/components/schemas/Types" - } + "minItems": 1, + "type": "array" }, - "required": [ - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - } - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { + "jsonapi": { "additionalProperties": false, - "description": "SBOM test resource object", + "example": { + "version": "1.0" + }, "properties": { - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" - }, - "type": { - "$ref": "#/components/schemas/Types" } }, "required": [ - "id", - "type" + "version" ], "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Created SBOM test successfully", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Create an SBOM test run (Early Access)", - "tags": [ - "SBOM" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-02~experimental", - "2023-08-31~beta", - "2024-04-22~beta", - "2024-07-10~beta" - ], - "x-snyk-api-resource": "sbom_tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-07-10~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/sbom_tests/{job_id}": { - "get": { - "description": "Get an SBOM test run status\n\n#### Required permissions\n\n- `Test Projects (org.project.test)`", - "operationId": "getSbomTestStatus", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/JobId" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "description": "SBOM test resource object", - "properties": { - "attributes": { - "properties": { - "status": { - "enum": [ - "processing", - "error", - "finished" - ], - "type": "string" - } - }, - "type": "object" - }, - "id": { - "format": "uuid", - "type": "string" - }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" - }, + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "version": "1.0" } }, - "type": "object" - } - } - }, - "description": "SBOM test run status", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Gets an SBOM test run status (Early Access)", - "tags": [ - "SBOM" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-02~experimental", - "2023-08-31~beta", - "2024-04-22~beta", - "2024-07-10~beta" - ], - "x-snyk-api-resource": "sbom_tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-07-10~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/sbom_tests/{job_id}/results": { - "get": { - "description": "Get an SBOM test run result\n\n#### Required permissions\n\n- `Test Projects (org.project.test)`", - "operationId": "getSbomTestResult", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/JobId" - }, - { - "$ref": "#/components/parameters/Accept" - } - ], - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "additionalProperties": true, - "type": "object" - } - }, - "application/vnd.api+json": { - "schema": { "properties": { - "data": { - "additionalProperties": false, - "description": "SBOM test resource object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/SbomTestResultsAttributes" - }, - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", - "type": "string" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" }, - "relationships": { - "properties": { - "affected_packages": { - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/ResourceReference" + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" }, - "type": "array" - } + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" }, - "type": "object" - } + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" }, - "type": "object" + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "$ref": "#/components/schemas/Types" - } - }, - "required": [ - "id", - "type" - ], - "type": "object" - }, - "included": { - "items": { - "additionalProperties": true, + "required": [ + "status", + "detail" + ], "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "SBOM test results", + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } - } - }, - "summary": "Gets an SBOM test run result (Early Access)", - "tags": [ - "SBOM" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-02~experimental", - "2023-08-31~beta", - "2024-04-22~beta", - "2024-07-10~beta" - ], - "x-snyk-api-resource": "sbom_tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-07-10~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/service_accounts": { - "get": { - "description": "Get all service accounts for an organization.\n\n#### Required permissions\n\n- `View service accounts (org.service_account.read)`", - "operationId": "getManyOrgServiceAccounts", - "parameters": [ - { - "description": "The ID of the Snyk Organization that owns the service accounts.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "responses": { - "200": { + "404": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/ServiceAccount" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "A list of service accounts is returned.", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get a list of organization service accounts.", - "tags": [ - "ServiceAccounts" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-09-07" - ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - }, - "post": { - "description": "Create a service account for an organization. The service account can be used to access the Snyk API.\n\n#### Required permissions\n\n- `Create service accounts (org.service_account.create)`", - "operationId": "createOrgServiceAccount", - "parameters": [ - { - "description": "The ID of the Snyk Organization that is creating and will own the service account.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, "properties": { - "access_token_expires_at": { - "description": "The expiry date of the access token. Required only when auth_type is access_token.", - "example": "2025-08-16T00:00:00Z", - "format": "date-time", + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", "type": "string" }, - "access_token_ttl_seconds": { - "description": "The time, in seconds, that a generated oauth access token will be valid for. Defaults to 1 hour if unset. Only used when auth_type is one of the oauth_* variants.", - "maximum": 86400, - "minimum": 3600, - "type": "number" - }, - "auth_type": { - "description": "The authentication strategy for the service account:\n * api_key - Regular Snyk API Key.\n * oauth_client_secret - OAuth2 client_credentials grant, which returns a client secret that can be used to retrieve an oauth access token.\n * oauth_private_key_jwt - OAuth2 client_credentials grant, using private_key_jwt client_assertion as laid out in OIDC Connect Core 1.0, section 9.\n * access_token - Access tokens are long-lived, can be used more than once for increased flexibility, and have expiries for enhanced security.", - "enum": [ - "api_key", - "oauth_client_secret", - "oauth_private_key_jwt", - "access_token" - ], + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", "type": "string" }, - "jwks_url": { - "description": "A JWKs URL hosting your public keys, used to verify signed JWT requests. Must be https. Required only when auth_type is oauth_private_key_jwt.", + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", "type": "string" }, - "name": { - "description": "A human-friendly name for the service account.", + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", "type": "string" }, - "role_id": { - "description": "The ID of the role which the created service account should use. Obtained in the Snyk UI, via \"Group Page\" -\u003e \"Settings\" -\u003e \"Member Roles\" -\u003e \"Create new Role\". Can be shared among multiple accounts.", - "format": "uuid", + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", "type": "string" } }, "required": [ - "name", - "role_id", - "auth_type" + "status", + "detail" ], "type": "object" }, - "type": { - "description": "The Resource type.", - "enum": [ - "service_account" - ], - "type": "string" - } - }, - "required": [ - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "required": true - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/ServiceAccount" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "A new service account has been created", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Create a service account for an organization.", + "summary": "Creates Broker connection Integration Configuration", "tags": [ - "ServiceAccounts" + "BrokerConnections" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-09-07" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "service_accounts", + "x-snyk-api-resource": "connections", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, "x-stability-level": "stable" } }, - "/orgs/{org_id}/service_accounts/{serviceaccount_id}": { + "/tenants/{tenant_id}/brokers/connections/{connection_id}/orgs/{org_id}/integrations/{integration_id}": { "delete": { - "description": "Delete a service account in an organization.\n\n#### Required permissions\n\n- `Remove service accounts (org.service_account.delete)`", - "operationId": "deleteServiceAccount", + "description": "Deletes an existing Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "deleteBrokerConnectionIntegration", "parameters": [ { - "description": "The ID of org to which the service account belongs.", + "$ref": "#/components/parameters/TenantId" + }, + { + "$ref": "#/components/parameters/ConnectionId" + }, + { + "description": "Org ID", "in": "path", "name": "org_id", "required": true, @@ -43551,1176 +87139,2161 @@ } }, { - "description": "The ID of the service account.", - "in": "path", - "name": "serviceaccount_id", + "$ref": "#/components/parameters/IntegrationId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } - }, - { - "$ref": "#/components/parameters/Version" } ], "responses": { "204": { - "description": "The service account has been deleted.", + "description": "Broker connection integration was deleted", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Delete a service account in an organization.", - "tags": [ - "ServiceAccounts" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-09-07" - ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - }, - "get": { - "description": "Get an organization-level service account by its ID.\n\n#### Required permissions\n\n- `View service accounts (org.service_account.read)`", - "operationId": "getOneOrgServiceAccount", - "parameters": [ - { - "description": "The ID of the Snyk Organization that owns the service account.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The ID of the service account.", - "in": "path", - "name": "serviceaccount_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/ServiceAccount" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "Service account is returned.", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get an organization service account.", - "tags": [ - "ServiceAccounts" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-09-07" - ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - }, - "patch": { - "description": "Update the name of an organization-level service account by its ID.\n\n#### Required permissions\n\n- `Edit service accounts (org.service_account.edit)`", - "operationId": "updateOrgServiceAccount", - "parameters": [ - { - "description": "The ID of the Snyk Organization that owns the service account.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The ID of the service account.", - "in": "path", - "name": "serviceaccount_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, "properties": { - "name": { - "description": "A human-friendly name for the service account. Must be unique within the organization.", + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", "type": "string" } }, "required": [ - "name" + "status", + "detail" ], "type": "object" }, - "id": { - "description": "The ID of the service account. Must match the id in the url path.", - "format": "uuid", - "type": "string" - }, - "type": { - "description": "The Resource type.", - "enum": [ - "service_account" - ], - "type": "string" - } - }, - "required": [ - "type", - "id", - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "required": true - }, - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/ServiceAccount" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "Service account is returned.", + "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update an organization service account.", - "tags": [ - "ServiceAccounts" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-09-07" - ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/service_accounts/{serviceaccount_id}/secrets": { - "post": { - "description": "Manage the client secret of an organization service account by the service account ID.\n\n#### Required permissions\n\n- `Edit service accounts (org.service_account.edit)`", - "operationId": "updateOrgServiceAccountSecret", - "parameters": [ - { - "description": "The ID of the Snyk Organization that owns the service account.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The ID of the service account.", - "in": "path", - "name": "serviceaccount_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/Version" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, "properties": { - "mode": { - "description": "Operation to perform:\n * `replace` - Replace existing secrets with a new generated secret.\n * `create` - Add a new secret, preserving existing secrets. A maximum of to two secrets can exist at a time.\n * `delete` - Remove an existing secret by value. At least one secret must remain per service account.\n", - "enum": [ - "replace", - "create", - "delete" - ], + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", "type": "string" }, - "secret": { - "description": "Secret to delete when using `delete` mode", + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", "type": "string" } }, "required": [ - "mode" + "status", + "detail" ], "type": "object" }, - "type": { - "description": "The Resource type.", - "enum": [ - "service_account" - ], - "type": "string" - } - }, - "required": [ - "attributes", - "type" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "required": true - }, - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/ServiceAccount" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data" + "errors" ], "type": "object" } } }, - "description": "Service account client secret has been updated.", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Manage an organization service account's client secret.", - "tags": [ - "ServiceAccounts" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-09-07" - ], - "x-snyk-api-resource": "service_accounts", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-07", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/settings/iac": { - "get": { - "description": "Get the Infrastructure as Code Settings for an org.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getIacSettingsForOrg", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the org whose Infrastructure as Code settings are requested.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/OrgIacSettingsResponse" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "The Infrastructure as Code Settings of the org.", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Get the Infrastructure as Code Settings for an org.", + "summary": "Deletes an Integration for a Broker connection", "tags": [ - "IacSettings" + "BrokerConnections" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2021-12-09" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "iac_settings", + "x-snyk-api-resource": "connections", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2021-12-09", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, "x-stability-level": "stable" - }, - "patch": { - "description": "Update the Infrastructure as Code Settings for an org.\n\n#### Required permissions\n\n- `Edit Organization (org.edit)`", - "operationId": "updateIacSettingsForOrg", + } + }, + "/tenants/{tenant_id}/brokers/deployments": { + "get": { + "description": "List Broker deployments for the tenant\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listBrokerDeploymentsForTenant", "parameters": [ { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/TenantId" }, { - "description": "The id of the org whose Infrastructure as Code settings are getting updated", - "in": "path", - "name": "org_id", + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } } ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/OrgIacSettingsRequest" - } - }, - "type": "object" + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ListBrokerDeploymentsResponse" + } + } + }, + "description": "Returns the list of Broker deployments by install ID", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } - } - }, - "responses": { - "200": { + }, + "400": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/OrgIacSettingsResponse" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "The Infrastructure as Code Settings of the org were updated.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update the Infrastructure as Code Settings for an org", - "tags": [ - "IacSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2021-12-09" - ], - "x-snyk-api-resource": "iac_settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2021-12-09", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/settings/opensource": { - "get": { - "description": "Returns settings for your Org which may also be controlled at the Group level.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getOpenSourceSettingsForOrg", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the org.", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "description": "The Open Source settings for an Org.", - "properties": { - "attributes": { - "properties": { - "reachability": { - "description": "The reachability setting for Org.", - "properties": { - "enabled": { - "description": "When enabled projects in this Org will be scanned for reachable vulnerabilities.", - "example": true, - "type": "boolean" - } + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" }, - "type": "object" - } + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" }, - "type": "object" - }, - "id": { - "description": "ID", - "example": "ea536a06-0566-40ca-b96b-155568aa2027", - "format": "uuid", - "type": "string" + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "description": "Content type", - "example": "opensource_settings", + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "The Open Source Settings for given Org.", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get the Open Source Settings for an Org. (Early Access)", - "tags": [ - "OpenSourceSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "open_source", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/settings/sast": { - "get": { - "description": "Retrieves the SAST settings for an org\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getSastSettings", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the org for which we want to retrieve the SAST settings", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/SastEnablement" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "The SAST settings for the org are being retrieved", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Retrieves the SAST settings for an org", - "tags": [ - "SastSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-22" - ], - "x-snyk-api-resource": "sast_settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-06-22", - "x-stability-level": "stable" - }, - "patch": { - "description": "Enable/Disable the Snyk Code settings for an org\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `Edit Organization (org.edit)`", - "operationId": "updateOrgSastSettings", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the org for which we want to update the Snyk Code setting", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, "properties": { - "sast_enabled": { - "description": "The value of the updated settings for sastEnabled setting", - "type": "boolean" + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" } }, "required": [ - "sast_enabled" + "status", + "detail" ], "type": "object" }, - "id": { - "format": "uuid", - "type": "string" - }, - "type": { - "type": "string" - } - }, - "required": [ - "id", - "type", - "attributes" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "required": true - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/SastEnablement" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "The SAST settings for the org are being updated", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Enable/Disable the Snyk Code settings for an org", + "summary": "List Broker deployments for tenant", "tags": [ - "SastSettings" + "BrokerDeployments" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-08-24~experimental", - "2023-09-11" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "sast_settings", + "x-snyk-api-resource": "deployments", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-09-11", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, "x-stability-level": "stable" } }, - "/orgs/{org_id}/slack_app/{bot_id}": { - "delete": { - "description": "Remove the given Slack App integration\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "deleteSlackDefaultNotificationSettings", + "/tenants/{tenant_id}/brokers/installs/{install_id}/connections/{connection_id}/contexts": { + "get": { + "description": "List Broker contexts for a given broker connection ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listConnectionContexts", "parameters": [ { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/TenantId" }, { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/InstallId" }, { - "$ref": "#/components/parameters/BotId" - } - ], - "responses": { - "204": { - "description": "Slack App integration successfully removed", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" + "$ref": "#/components/parameters/ConnectionId" }, - "404": { - "$ref": "#/components/responses/404" + { + "$ref": "#/components/parameters/EndingBefore" }, - "409": { - "$ref": "#/components/responses/409" + { + "$ref": "#/components/parameters/StartingAfter" }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Remove the given Slack App integration", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - }, - "get": { - "description": "Get Slack integration default notification settings for the provided tenant ID and bot ID.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "getSlackDefaultNotificationSettings", - "parameters": [ { - "$ref": "#/components/parameters/Version" + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } }, { - "description": "Org ID", - "in": "path", - "name": "org_id", + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } - }, - { - "$ref": "#/components/parameters/BotId" } ], "responses": { @@ -44728,1420 +89301,2184 @@ "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/SlackDefaultSettingsData" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "type": "object" + "$ref": "#/components/schemas/ListBrokerContextsResponse" } } }, - "description": "Default settings created successfully", + "description": "Returns the list of broker contexts by connection ID", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get Slack integration default notification settings.", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - }, - "post": { - "description": "Create new Slack notification default settings for a given tenant.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "createSlackDefaultNotificationSettings", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/BotId" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/SettingsRequest" - } - } - }, - "description": "Create new Slack notification default settings for a tenant." - }, - "responses": { - "201": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/SlackDefaultSettingsData" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Default settings created successfully", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Create new Slack notification default settings.", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/slack_app/{bot_id}/projects": { - "get": { - "description": "Slack notification settings overrides for projects. These settings overrides the default settings configured for the tenant.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "getSlackProjectNotificationSettingsCollection", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/BotId" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { - "$ref": "#/components/schemas/GetProjectSettingsCollection" + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" } - } - }, - "description": "Return default settings for a tenant", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Slack notification settings overrides for projects", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/slack_app/{bot_id}/projects/{project_id}": { - "delete": { - "description": "Remove Slack settings override for a project.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "deleteSlackProjectNotificationSettings", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Project ID", - "in": "path", - "name": "project_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/BotId" - } - ], - "responses": { - "204": { - "description": "Slack settings override for the project removed successfully.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Remove Slack settings override for a project.", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - }, - "patch": { - "description": "Update Slack notification settings for a project.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "updateSlackProjectNotificationSettings", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/BotId" - }, - { - "description": "Project ID", - "in": "path", - "name": "project_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ProjectSettingsPatchRequest" - } - } - }, - "description": "Update existing project specific settings for a project." - }, - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/ProjectSettingsData" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Slack notification settings for a project updated successfully.", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update Slack notification settings for a project.", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - }, - "post": { - "description": "Create Slack settings override for a project.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "createSlackProjectNotificationSettings", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Project ID", - "in": "path", - "name": "project_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/BotId" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/SettingsRequest" - } - } - }, - "description": "Create new Slack notification default settings for a tenant." - }, - "responses": { - "201": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/ProjectSettingsData" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Project settings created successfully", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { - "$ref": "#/components/headers/LocationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Create a new Slack settings override for a given project.", - "tags": [ - "SlackSettings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07~experimental", - "2022-12-14" - ], - "x-snyk-api-resource": "settings", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-12-14", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/slack_app/{tenant_id}/channels": { - "get": { - "description": "Requires the Snyk Slack App to be set up for this org, will retrieve a list of channels the Snyk Slack App can access. Note that it is currently only possible to page forwards through this collection, no prev links will be generated and the ending_before parameter will not function.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "listChannels", - "parameters": [ - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/ChannelLimit" - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/TenantId" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/SlackChannel" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "List of Slack channels", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Get a list of Slack channels", + "summary": "List Connection contexts", "tags": [ - "Slack" + "BrokerContexts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-11-07" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "channels", + "x-snyk-api-resource": "contexts", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-11-07", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, "x-stability-level": "stable" } }, - "/orgs/{org_id}/slack_app/{tenant_id}/channels/{channel_id}": { - "get": { - "description": "Requires the Snyk Slack App to be set up for this org. It will return the Slack channel name for the provided Slack channel ID.\n\n#### Required permissions\n\n- `Install Apps (org.app.install)`", - "operationId": "getChannelNameById", + "/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}": { + "delete": { + "description": "Deletes an existing broker context\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "deleteBrokerContext", "parameters": [ { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/TenantId" }, { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } + "$ref": "#/components/parameters/InstallId" }, { - "$ref": "#/components/parameters/ChannelId" + "$ref": "#/components/parameters/ContextId" }, { - "$ref": "#/components/parameters/TenantId" + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } } ], "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/SlackChannel" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" - } - } - }, - "description": "List of Slack channels", + "204": { + "description": "Broker context was deleted", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get Slack Channel name by Slack Channel ID.", - "tags": [ - "Slack" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-11-07" - ], - "x-snyk-api-resource": "channels", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-11-07", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/targets": { - "get": { - "description": "Get a list of an organization's targets.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", - "operationId": "getOrgsTargets", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "description": "Calculate total amount of filtered results", - "in": "query", - "name": "count", - "schema": { - "type": "boolean" - } - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - }, - { - "description": "The id of the org to return a list of targets", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "Return targets that match the provided value of is_private", - "in": "query", - "name": "is_private", - "schema": { - "type": "boolean" - } - }, - { - "description": "Return only the targets that has projects", - "in": "query", - "name": "exclude_empty", - "schema": { - "default": true, - "type": "boolean" - } - }, - { - "description": "Return targets that match the provided remote_url.", - "in": "query", - "name": "url", - "schema": { - "type": "string" - } - }, - { - "description": "Return targets that match the provided source_types", - "explode": false, - "in": "query", - "name": "source_types", - "schema": { - "items": { - "enum": [ - "bitbucket-server", - "gitlab", - "github-enterprise", - "bitbucket-cloud", - "bitbucket-connect-app", - "azure-repos", - "github", - "github-cloud-app", - "github-server-app", - "cli", - "docker-hub", - "in-memory-fs", - "acr", - "ecr", - "gcr", - "artifactory-cr", - "harbor-cr", - "quay-cr", - "github-cr", - "nexus-cr", - "nexus-private-repo", - "digitalocean-cr", - "gitlab-cr", - "google-artifact-cr", - "heroku", - "kubernetes", - "api", - "aws-lambda", - "azure-functions", - "cloud-foundry", - "pivotal", - "ibm-cloud", - "terraform-cloud" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "description": "Return targets with display names starting with the provided string", - "in": "query", - "name": "display_name", - "schema": { - "type": "string" - } - }, - { - "description": "Return only targets which have been created at or after the specified date.\n", - "example": "2022-01-01T16:00:00Z", - "in": "query", - "name": "created_gte", - "schema": { - "format": "date-time", - "type": "string" - } - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/PublicTarget" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - }, - "meta": { "additionalProperties": false, "example": { - "count": 3 + "version": "1.0" }, "properties": { - "count": { - "type": "number" + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" } }, + "required": [ + "version" + ], "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "A list of targets is returned for the targeted org", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get targets by org ID", - "tags": [ - "Targets" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2021-08-20~beta", - "2024-02-21" - ], - "x-snyk-api-resource": "targets", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-02-21", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/targets/{target_id}": { - "delete": { - "description": "Delete the specified target.\n\n#### Required permissions\n\n- `Remove Projects (org.project.delete)`", - "operationId": "deleteOrgsTarget", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the org to delete", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The id of the target to delete", - "in": "path", - "name": "target_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "The target is deleted with all projects, if it is found in the specified org.", + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Delete target by target ID", - "tags": [ - "Targets" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2021-09-29~beta", - "2023-06-23~beta", - "2024-02-21" - ], - "x-snyk-api-resource": "targets", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-02-21", - "x-stability-level": "stable" - }, - "get": { - "description": "Get a specified target for an organization.\n\n#### Required permissions\n\n- `View Projects (org.project.read)`", - "operationId": "getOrgsTarget", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "description": "The id of the org to return the target from", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The id of the target to return", - "in": "path", - "name": "target_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "$ref": "#/components/schemas/PublicTarget" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data" + "errors" ], "type": "object" } } }, - "description": "A single target is returned if it is found in the specified org", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "404": { - "$ref": "#/components/responses/404" - }, "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get target by target ID", - "tags": [ - "Targets" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2021-08-20~beta", - "2024-02-21" - ], - "x-snyk-api-resource": "targets", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-02-21", - "x-stability-level": "stable" - } - }, - "/orgs/{org_id}/test_jobs/{job_id}": { - "get": { - "description": "Get a test job.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getJob", - "parameters": [ - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" - }, - { - "description": "The org id", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/JobIdParam" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "description": "JobData represents a Job resource object.", - "properties": { - "attributes": { - "description": "JobAttributes represents the attributes of a Job resource", - "properties": { - "created_at": { - "description": "Creation time of the job resource", - "format": "date-time", - "type": "string" - }, - "status": { - "allOf": [ - { - "enum": [ - "pending", - "started", - "finished", - "errored" - ], - "type": "string" - } - ], - "description": "State of the test, whether it is pending, running, complete or errored." - } - }, - "required": [ - "status", - "created_at" - ], - "type": "object" - }, - "id": { - "format": "uuid", - "type": "string" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" }, - "relationships": { - "properties": { - "test": { - "properties": { - "data": { - "properties": { - "id": { - "format": "uuid", - "type": "string" - }, - "type": { - "enum": [ - "tests" - ], - "type": "string" - } + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" }, - "required": [ - "id", - "type" - ], - "type": "object" - } + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" }, - "required": [ - "data" - ], - "type": "object" - } + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" }, - "required": [ - "test" - ], - "type": "object" + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "enum": [ - "test_jobs" - ], - "type": "string" - } + "required": [ + "status", + "detail" + ], + "type": "object" }, - "required": [ - "id", - "attributes", - "type" - ], - "type": "object" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" - }, - "links": { - "additionalProperties": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "additionalProperties": false, + "example": { + "version": "1.0" }, "properties": { - "related": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - }, - "self": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "meta": { - "$ref": "#/components/schemas/io.snyk.api.common.Meta" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "Successful API response with a single resource", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Deletes broker context", + "tags": [ + "BrokerContexts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "contexts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "get": { + "description": "List Broker context for a given broker context ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getConnectionContext", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" + }, + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/ContextId" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerContextResponse" + } + } + }, + "description": "Returns the broker context by context ID", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46149,162 +91486,234 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "303": { + "400": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "description": "JobData represents a Job resource object.", - "properties": { - "attributes": { - "description": "JobAttributes represents the attributes of a Job resource", - "properties": { - "created_at": { - "description": "Creation time of the job resource", - "format": "date-time", - "type": "string" - }, - "status": { - "allOf": [ - { - "enum": [ - "pending", - "started", - "finished", - "errored" - ], - "type": "string" - } - ], - "description": "State of the test, whether it is pending, running, complete or errored." - } - }, - "required": [ - "status", - "created_at" - ], - "type": "object" - }, - "id": { - "format": "uuid", - "type": "string" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" }, - "relationships": { - "properties": { - "test": { - "properties": { - "data": { - "properties": { - "id": { - "format": "uuid", - "type": "string" - }, - "type": { - "enum": [ - "tests" - ], - "type": "string" - } + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" }, - "required": [ - "id", - "type" - ], - "type": "object" - } + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" }, - "required": [ - "data" - ], - "type": "object" - } + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" }, - "required": [ - "test" - ], - "type": "object" + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "enum": [ - "test_jobs" - ], - "type": "string" - } + "required": [ + "status", + "detail" + ], + "type": "object" }, - "required": [ - "id", - "attributes", - "type" - ], - "type": "object" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" - }, - "links": { - "additionalProperties": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "additionalProperties": false, + "example": { + "version": "1.0" }, "properties": { - "related": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - }, - "self": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "meta": { - "$ref": "#/components/schemas/io.snyk.api.common.Meta" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "Redirect to another resource after async processing.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { - "type": "string" - } - }, - "location": { - "required": true, - "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46312,44 +91721,234 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "400": { + "401": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" } } }, - "description": "Invalid input", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46357,179 +91956,234 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } - } - }, - "summary": "Get a test job. (Early Access)", - "tags": [ - "Tests" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/tests": { - "post": { - "description": "Create a new test.\n\n#### Required permissions\n\n- `View Organization (org.read)`\n\n- `Test packages (org.package.test)`", - "operationId": "createTest", - "parameters": [ - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" - }, - { - "description": "The org id", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/TestRequestBody" - } - } }, - "required": true - }, - "responses": { - "202": { + "404": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { - "properties": { - "attributes": { - "description": "JobAttributes represents the attributes of a Job resource", - "properties": { - "created_at": { - "description": "Creation time of the job resource", - "format": "date-time", - "type": "string" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" }, - "status": { - "allOf": [ - { - "enum": [ - "pending", - "started", - "finished", - "errored" - ], - "type": "string" - } - ], - "description": "State of the test, whether it is pending, running, complete or errored." - } + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" }, - "required": [ - "status", - "created_at" - ], - "type": "object" - }, - "id": { - "format": "uuid", - "type": "string" + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } }, - "type": { - "enum": [ - "test_jobs" - ], - "type": "string" - } + "required": [ + "status", + "detail" + ], + "type": "object" }, - "required": [ - "type", - "id", - "attributes" - ], - "type": "object" + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" - }, - "links": { - "additionalProperties": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "additionalProperties": false, + "example": { + "version": "1.0" }, "properties": { - "related": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - }, - "self": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" } }, + "required": [ + "version" + ], "type": "object" - }, - "meta": { - "$ref": "#/components/schemas/io.snyk.api.common.Meta" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "The request has been accepted for processing, but processing has not yet completed.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { - "content-location": { - "description": "A pointer to the newly created Test resource", - "required": true, - "schema": { - "format": "string", - "type": "string" - } - }, "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46537,44 +92191,234 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "400": { + "500": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" } } }, - "description": "Invalid input", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46582,6 +92426,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -46589,111 +92434,116 @@ } } }, - "summary": "Create a new test. (Early Access)", + "summary": "List Connection context", "tags": [ - "Tests" + "BrokerContexts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-10-15~beta" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/tests/{test_id}": { - "get": { - "description": "Get a test.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "getTest", + "x-snyk-api-resource": "contexts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "patch": { + "description": "Updates a Broker Context for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateBrokerContext", "parameters": [ { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" + "$ref": "#/components/parameters/TenantId" }, { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" + "$ref": "#/components/parameters/InstallId" }, { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" + "$ref": "#/components/parameters/ContextId" }, { - "description": "The org id", - "in": "path", - "name": "org_id", + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } - }, - { - "$ref": "#/components/parameters/TestIdParam" } ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateBrokerContextRequest" + } + } + } + }, "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/TestData" - }, - "jsonapi": { - "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" - }, - "links": { - "additionalProperties": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - }, - "properties": { - "related": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - }, - "self": { - "$ref": "#/components/schemas/io.snyk.api.common.LinkProperty" - } - }, - "type": "object" - }, - "meta": { - "$ref": "#/components/schemas/io.snyk.api.common.Meta" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/GetBrokerContextResponse" } } }, - "description": "Successful API response with a single resource", + "description": "Updates an existing Broker Context", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46701,6 +92551,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -46711,34 +92562,223 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" } } }, - "description": "Invalid input", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46746,119 +92786,234 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } - } - }, - "summary": "Get a test. (Early Access)", - "tags": [ - "Tests" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/tests/{test_id}/findings": { - "get": { - "description": "List findings for a test.\n\n#### Required permissions\n\n- `View Organization (org.read)`", - "operationId": "listFindings", - "parameters": [ - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.request_id" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.interaction_id" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.SnykApiRequest.version" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.PaginatedRequest.starting_after" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.PaginatedRequest.ending_before" - }, - { - "$ref": "#/components/parameters/io.snyk.api.request.PaginatedRequest.limit" - }, - { - "description": "The org id", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } }, - { - "$ref": "#/components/parameters/TestIdParam" - } - ], - "responses": { - "200": { + "401": { "content": { "application/vnd.api+json": { "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/FindingData" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/io.snyk.api.common.JsonApi" - }, - "links": { - "$ref": "#/components/schemas/io.snyk.api.common.PaginatedLinks" - }, - "meta": { - "$ref": "#/components/schemas/io.snyk.api.common.Meta" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "Successful API response for a paginated collection.", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46866,44 +93021,234 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/io.snyk.api.common.ErrorDocument" + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" } } }, - "description": "Invalid input", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", "type": "string" } }, "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", "type": "string" } }, "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } }, "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", "type": "string" } }, @@ -46911,1267 +93256,1603 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } - } - }, - "summary": "List findings for a test. (Early Access)", - "tags": [ - "Findings" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15~beta" - ], - "x-snyk-api-resource": "tests", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2024-10-15~beta", - "x-stability-level": "beta" - } - }, - "/orgs/{org_id}/users/{id}": { - "get": { - "description": "Get a summary of user.\n\nNote that Service Accounts are not returned by this endpoint. Please use the Service Accounts endpoints.\n\n#### Required permissions\n\n- `View users (org.user.read)`", - "operationId": "getUser", - "parameters": [ - { - "description": "The id of the org", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The id of the user", - "in": "path", - "name": "id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } }, - { - "$ref": "#/components/parameters/Version" - } - ], - "responses": { - "200": { + "500": { "content": { "application/vnd.api+json": { "schema": { - "properties": { - "data": { - "$ref": "#/components/schemas/User" - }, + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "jsonapi": { - "$ref": "#/components/schemas/JsonApi" + "version": "1.0" } }, - "required": [ - "jsonapi", - "data" - ], - "type": "object" - } - } - }, - "description": "User details", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get user by ID (Early Access)", - "tags": [ - "Users" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2021-09-13~beta" - ], - "x-snyk-api-resource": "users", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2021-09-13~beta", - "x-stability-level": "beta" - } - }, - "/self": { - "get": { - "description": "Retrieves information about the the user making the request.", - "operationId": "getSelf", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { "properties": { - "data": { - "$ref": "#/components/schemas/Principal20240422" + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ "jsonapi", - "data", - "links" + "errors" ], "type": "object" } } }, - "description": "Current user is returned", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "My User Details", + "summary": "Updates Broker Context", "tags": [ - "Users" + "BrokerContexts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2022-03-01~experimental", - "2022-09-14~experimental", - "2024-04-22" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "self", + "x-snyk-api-resource": "contexts", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-04-22", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, "x-stability-level": "stable" } }, - "/self/access_requests": { - "get": { - "description": "Get a list of user's access requests", - "operationId": "getAccessRequests", + "/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}/integration": { + "patch": { + "description": "Updates an integration to be associated with a Broker context\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateBrokerContextIntegration", "parameters": [ { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" + "$ref": "#/components/parameters/TenantId" }, { - "$ref": "#/components/parameters/EndingBefore" + "$ref": "#/components/parameters/InstallId" }, { - "$ref": "#/components/parameters/Limit" + "$ref": "#/components/parameters/ContextId" }, { - "$ref": "#/components/parameters/OrgIdFilter" + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } } ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/AccessRequest" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/Links" - } - }, - "required": [ - "jsonapi", - "data", - "links" - ], - "type": "object" - } - } - }, - "description": "A list of access requests are returned", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateBrokerConnectionIntegrationWithContext" } } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "500": { - "$ref": "#/components/responses/500" } }, - "summary": "Get access requests (Early Access)", - "tags": [ - "AccessRequests" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-12-01~experimental", - "2023-12-21~beta" - ], - "x-snyk-api-resource": "self", - "x-snyk-api-stability": "beta", - "x-snyk-api-version": "2023-12-21~beta", - "x-stability-level": "beta" - } - }, - "/self/apps": { - "get": { - "description": "Get a list of Snyk Apps that can act on your behalf", - "operationId": "getUserInstalledApps", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - } - ], "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "properties": { - "data": { - "items": { - "$ref": "#/components/schemas/PublicApp" - }, - "type": "array" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" - } - }, - "required": [ - "data", - "jsonapi", - "links" - ], - "type": "object" + "$ref": "#/components/schemas/UpdateBrokerConnectionIntegrationWithContextResponse" } } }, - "description": "A list of apps install that can act on your behalf", + "description": "Broker context assocation with a connection integration was created", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" - } - }, - "summary": "Get a list of Snyk Apps that can act on your behalf", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-03-11" - ], - "x-snyk-api-resource": "user_app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-stability-level": "stable" - } - }, - "/self/apps/installs": { - "get": { - "description": "Get a list of Snyk Apps installed for a user", - "operationId": "getAppInstallsForUser", - "parameters": [ - { - "description": "Expand relationships.", - "explode": false, - "in": "query", - "name": "expand", - "schema": { - "items": { - "enum": [ - "app" - ], - "type": "string" - }, - "type": "array" - }, - "style": "form" - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/AppInstallData" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "A list of apps installed for the specified organization.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" - } - }, - "summary": "Get a list of Snyk Apps installed for a user", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" - ], - "x-snyk-api-resource": "app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", - "x-stability-level": "stable" - } - }, - "/self/apps/installs/{install_id}": { - "delete": { - "description": "Revoke a Snyk App by install ID", - "operationId": "deleteUserAppInstallById", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/InstallId" - } - ], - "responses": { - "204": { - "description": "The Snyk App install is revoked, with no content (no errors).", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" - } - }, - "summary": "Revoke a Snyk App by install ID", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-06-19~experimental", - "2023-11-03", - "2024-05-23" - ], - "x-snyk-api-resource": "app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-05-23", - "x-stability-level": "stable" - } - }, - "/self/apps/{app_id}": { - "delete": { - "description": "Revoke access for an app by app id", - "operationId": "revokeUserInstalledApp", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/AppId" - } - ], - "responses": { - "204": { - "description": "Access to the Snyk App is revoked, with no content (no errors).", + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, "500": { - "$ref": "#/components/responses/500__0" - } - }, - "summary": "Revoke a Snyk App by app ID", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2022-03-11" - ], - "x-snyk-api-resource": "user_app_installs", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2022-03-11", - "x-stability-level": "stable" - } - }, - "/self/apps/{app_id}/sessions": { - "get": { - "description": "Get a list of active OAuth sessions by app ID", - "operationId": "getUserAppSessions", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/AppId" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/SessionData" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ - "data", - "jsonapi" + "jsonapi", + "errors" ], "type": "object" } } }, - "description": "Attributes identifying the active OAuth sessions.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } - }, - "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" } }, - "summary": "Get a list of active OAuth sessions by app ID", + "summary": "Updates an integration to be associated with a Broker context", "tags": [ - "Apps" + "BrokerContexts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2023-03-30~experimental", - "2023-11-03" + "2024-02-08~experimental", + "2024-10-15" ], - "x-snyk-api-resource": "sessions", + "x-snyk-api-resource": "contexts", "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, "x-stability-level": "stable" } }, - "/self/apps/{app_id}/sessions/{session_id}": { + "/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}/integrations/{integration_id}": { "delete": { - "description": "Revoke the Snyk App session of an active user", - "operationId": "revokeUserAppSession", + "description": "Deletes an existing Broker context association for an integration\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "deleteBrokerContextIntegration", "parameters": [ { - "$ref": "#/components/parameters/Version" + "$ref": "#/components/parameters/TenantId" }, { - "$ref": "#/components/parameters/AppId" + "$ref": "#/components/parameters/InstallId" }, { - "description": "Session ID", - "in": "path", - "name": "session_id", + "$ref": "#/components/parameters/ContextId" + }, + { + "$ref": "#/components/parameters/IntegrationId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", "required": true, "schema": { - "format": "uuid", + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } } ], "responses": { "204": { - "description": "The user app sessions has been revoked.", + "description": "Broker context assocation with a connection integration was deleted", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "location": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", "type": "string" } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, "400": { - "$ref": "#/components/responses/400__0" - }, - "401": { - "$ref": "#/components/responses/401__0" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404__0" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500__0" - } - }, - "summary": "Revoke the Snyk App session of an active user", - "tags": [ - "Apps" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2023-03-30~experimental", - "2023-11-03" - ], - "x-snyk-api-resource": "sessions", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2023-11-03", - "x-stability-level": "stable" - } - }, - "/tenants": { - "get": { - "description": "Get a list of all Tenants which the calling user is a member of", - "operationId": "listTenants", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/Limit" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, "properties": { - "data": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "items": { - "$ref": "#/components/schemas/TenantResponseData" + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, + "minItems": 1, "type": "array" }, "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/PaginatedLinks" + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" } }, "required": [ - "data", "jsonapi", - "links" + "errors" ], "type": "object" } } }, - "description": "Returns a list of tenants.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } }, "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } }, "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } }, "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } }, "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } }, "sunset": { - "$ref": "#/components/headers/SunsetHeader" + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } } } }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get a list of all accessible Tenants", - "tags": [ - "Tenants" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-04-11~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "tenants", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}": { - "get": { - "description": "Get the full details of a Tenant.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "getTenant", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/TenantId20240411" - } - ], - "responses": { - "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "properties": { - "data": { - "$ref": "#/components/schemas/TenantResponseData" - }, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" + "version": "1.0" } }, - "type": "object" - } - } - }, - "description": "Returns an instance of a tenant.", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Get a single Tenant by ID", - "tags": [ - "Tenants" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-04-11~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "tenants", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - }, - "patch": { - "description": "Update the details of a tenant\n\n#### Required permissions\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "updateTenant", - "parameters": [ - { - "$ref": "#/components/parameters/Version" - }, - { - "$ref": "#/components/parameters/TenantId20240411" - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "properties": { - "data": { - "additionalProperties": false, - "properties": { - "attributes": { - "$ref": "#/components/schemas/TenantUpdateAttributes" - }, - "id": { - "format": "uuid", - "type": "string" + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" }, - "type": { - "$ref": "#/components/schemas/Types" - } + "minItems": 1, + "type": "array" }, - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - } - }, - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "properties": { - "data": { + "jsonapi": { "additionalProperties": false, - "description": "tenant resource object", + "example": { + "version": "1.0" + }, "properties": { - "attributes": { - "$ref": "#/components/schemas/TenantAttributes" - }, - "id": { - "example": "d5b640e5-d88c-4c17-9bf0-93597b7a1ce2", - "format": "uuid", + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" - }, - "type": { - "$ref": "#/components/schemas/Types" } }, "required": [ - "id", - "type" + "version" ], "type": "object" - }, - "jsonapi": { - "$ref": "#/components/schemas/JsonApi" - }, - "links": { - "$ref": "#/components/schemas/SelfLink" } }, + "required": [ + "jsonapi", + "errors" + ], "type": "object" } } }, - "description": "Instance of tenant is updated", - "headers": { - "deprecation": { - "$ref": "#/components/headers/DeprecationHeader" - }, - "snyk-request-id": { - "$ref": "#/components/headers/RequestIdResponseHeader" - }, - "snyk-version-lifecycle-stage": { - "$ref": "#/components/headers/VersionStageResponseHeader" - }, - "snyk-version-requested": { - "$ref": "#/components/headers/VersionRequestedResponseHeader" - }, - "snyk-version-served": { - "$ref": "#/components/headers/VersionServedResponseHeader" - }, - "sunset": { - "$ref": "#/components/headers/SunsetHeader" - } - } - }, - "204": { - "$ref": "#/components/responses/204" - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "404": { - "$ref": "#/components/responses/404" - }, - "409": { - "$ref": "#/components/responses/409" - }, - "500": { - "$ref": "#/components/responses/500" - } - }, - "summary": "Update tenant", - "tags": [ - "Tenants" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-04-11~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "tenants", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/connections/{connection_id}/integrations": { - "get": { - "description": "Get all integrations using the Broker connection\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "getBrokerConnectionIntegrations", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GetBrokerConnectionIntegrationsResponse" - } - } - }, - "description": "Returns a list of Integration IDs", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -48226,14 +94907,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "400": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -48406,7 +95087,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -48461,14 +95142,148 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } + } + }, + "summary": "Deletes the Broker context association with an Integration", + "tags": [ + "BrokerContexts" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "contexts", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments": { + "get": { + "description": "List Broker deployments for a given install ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listBrokerDeployments", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ListBrokerDeploymentsResponse" + } + } + }, + "description": "Returns the list of Broker deployments by install ID", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -48641,7 +95456,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -48696,14 +95511,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -48876,141 +95691,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Get Integrations using the current Broker connection", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/connections/{connection_id}/orgs/{org_id}/integration": { - "post": { - "description": "Configures integrations to use the Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "createBrokerConnectionIntegration", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateBrokerConnectionIntegration" - } - } - } - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GetBrokerConnectionIntegrationResponse" - } - } - }, - "description": "Configured integrations to use broker connection successfully", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -49020,9 +95701,6 @@ "type": "string" } }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { @@ -49068,14 +95746,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -49248,7 +95926,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -49303,14 +95981,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "403": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -49483,7 +96161,7 @@ } } }, - "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -49538,14 +96216,139 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } + } + }, + "summary": "List Broker deployments", + "tags": [ + "BrokerDeployments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "deployments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "post": { + "description": "Creates a new Broker Deployment for an installation\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "createBrokerDeployment", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateBrokerDeploymentRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerDeploymentResponse" + } + } + }, + "description": "Created broker deployment successfully", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -49718,7 +96521,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -49773,14 +96576,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -49953,128 +96756,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Creates Broker connection Integration Configuration", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/connections/{connection_id}/orgs/{org_id}/integrations/{integration_id}": { - "delete": { - "description": "Deletes an existing Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "deleteBrokerConnectionIntegration", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "description": "Org ID", - "in": "path", - "name": "org_id", - "required": true, - "schema": { - "format": "uuid", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/IntegrationId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "Broker connection integration was deleted", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -50129,14 +96811,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -50309,7 +96991,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -50364,14 +97046,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "403": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -50544,7 +97226,7 @@ } } }, - "description": "Forbidden: the request requires an authentication token with more or different permissions. Review token permissions and try again. See [PAT permissions](https://support.snyk.io/hc/en-us/articles/4410967220765-How-to-check-if-a-personal-access-token-has-the-correct-permissions).", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -50599,14 +97281,125 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } + } + }, + "summary": "Creates Broker Deployment", + "tags": [ + "BrokerDeployments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "deployments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}": { + "delete": { + "description": "Delete a Broker deployment for a given install ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "deleteBrokerDeployment", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "Returns an empty response", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -50779,7 +97572,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -50834,14 +97627,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -51014,138 +97807,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Deletes an Integration for a Broker connection", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/deployments": { - "get": { - "description": "List Broker deployments for the tenant\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "listBrokerDeploymentsForTenant", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ListBrokerDeploymentsResponse" - } - } - }, - "description": "Returns the list of Broker deployments by install ID", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -51207,7 +97869,7 @@ } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -51380,7 +98042,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -51442,7 +98104,7 @@ } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -51615,7 +98277,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -51676,8 +98338,133 @@ } } } + } + }, + "summary": "Deletes Broker deployment", + "tags": [ + "BrokerDeployments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "deployments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "patch": { + "description": "Updates a Broker deployment for a given install ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateBrokerDeployment", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateBrokerDeploymentRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerDeploymentResponse" + } + } + }, + "description": "Updates an existing Broker deployment by install ID", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -51850,7 +98637,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -51912,7 +98699,7 @@ } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -52085,141 +98872,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "List Broker deployments for tenant", - "tags": [ - "BrokerDeployments" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "deployments", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments": { - "get": { - "description": "List Broker deployments for a given install ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "listBrokerDeployments", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ListBrokerDeploymentsResponse" - } - } - }, - "description": "Returns the list of Broker deployments by install ID", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -52281,7 +98934,7 @@ } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -52454,7 +99107,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -52516,7 +99169,7 @@ } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -52689,7 +99342,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -52750,8 +99403,119 @@ } } } + } + }, + "summary": "Updates Broker deployment", + "tags": [ + "BrokerDeployments" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "deployments", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections": { + "delete": { + "description": "Deletes all existing Broker connections for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "deleteBrokerConnections", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "All Broker connections were deleted", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -52924,7 +99688,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -52979,14 +99743,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -53159,129 +99923,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "List Broker deployments", - "tags": [ - "BrokerDeployments" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "deployments", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "post": { - "description": "Creates a new Broker Deployment for an installation\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "createBrokerDeployment", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateBrokerDeploymentRequest" - } - } - } - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GetBrokerDeploymentResponse" - } - } - }, - "description": "Created broker deployment successfully", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -53291,9 +99933,6 @@ "type": "string" } }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { @@ -53339,14 +99978,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -53519,7 +100158,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -53574,14 +100213,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -53754,7 +100393,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -53809,14 +100448,149 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } + } + }, + "summary": "Deletes Broker connections", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "get": { + "description": "List all Broker connections for a given deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listBrokerConnections", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/ListBrokerConnectionsResponse" + } + } + }, + "description": "Returns the list of Broker connections by deployment ID", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -53989,7 +100763,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -54044,14 +100818,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -54224,118 +100998,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Creates Broker Deployment", - "tags": [ - "BrokerDeployments" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "deployments", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}": { - "delete": { - "description": "Delete a Broker deployment for a given install ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "deleteBrokerDeployment", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "Returns an empty response", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -54390,14 +101053,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -54570,7 +101233,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -54625,14 +101288,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -54805,7 +101468,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -54860,14 +101523,142 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } + } + }, + "summary": "List Broker connections", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "post": { + "description": "Creates a new Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "createBrokerConnection", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateBrokerConnectionRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerConnectionResponse" + } + } + }, + "description": "Created broker connection successfully", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -55040,7 +101831,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -55095,14 +101886,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -55275,132 +102066,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Deletes Broker deployment", - "tags": [ - "BrokerDeployments" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "deployments", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "patch": { - "description": "Updates a Broker deployment for a given install ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "updateBrokerDeployment", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/UpdateBrokerDeploymentRequest" - } - } - } - }, - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GetBrokerDeploymentResponse" - } - } - }, - "description": "Updates an existing Broker deployment by install ID", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -55455,14 +102121,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -55635,7 +102301,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -55690,14 +102356,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -55870,7 +102536,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -55925,14 +102591,128 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } + } + }, + "summary": "Creates Broker connection", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id}": { + "delete": { + "description": "Deletes an existing Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "deleteBrokerConnection", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/ConnectionId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "Broker connection was deleted", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -56105,7 +102885,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -56160,14 +102940,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -56340,7 +103120,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -56395,63 +103175,187 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02T00:00:00Z", + "example": "2021-08-02", "format": "date", "type": "string" } } } - } - }, - "summary": "Updates Broker deployment", - "tags": [ - "BrokerDeployments" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "deployments", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections": { - "delete": { - "description": "Deletes all existing Broker connections for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "deleteBrokerConnections", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "All Broker connections were deleted", + "404": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -56513,7 +103417,7 @@ } } }, - "400": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -56686,7 +103590,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -56747,8 +103651,146 @@ } } } + } + }, + "summary": "Deletes Broker connection", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "get": { + "description": "Get all Broker connection data for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getBrokerConnection", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "401": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/ConnectionId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerConnectionResponse" + } + } + }, + "description": "Returns a Broker connection", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -56921,7 +103963,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -56983,7 +104025,7 @@ } } }, - "404": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -57156,7 +104198,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -57218,7 +104260,7 @@ } } }, - "500": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -57391,142 +104433,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Deletes Broker connections", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "get": { - "description": "List all Broker connections for a given deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "listBrokerConnections", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ListBrokerConnectionsResponse" - } - } - }, - "description": "Returns the list of Broker connections by deployment ID", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -57588,7 +104495,7 @@ } } }, - "400": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -57761,7 +104668,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -57822,8 +104729,136 @@ } } } + } + }, + "summary": "Get Broker connection", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "patch": { + "description": "Updates a Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateBrokerConnection", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "401": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/ConnectionId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateBrokerConnectionRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerConnectionResponse" + } + } + }, + "description": "Updates an existing Broker connection for an deployment", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -57996,7 +105031,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -58058,7 +105093,7 @@ } } }, - "404": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -58231,7 +105266,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -58293,7 +105328,7 @@ } } }, - "500": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -58466,132 +105501,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "List Broker connections", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "post": { - "description": "Creates a new Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "createBrokerConnection", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateBrokerConnectionRequest" - } - } - } - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GetBrokerConnectionResponse" - } - } - }, - "description": "Created broker connection successfully", + "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -58601,9 +105511,6 @@ "type": "string" } }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { @@ -58656,7 +105563,7 @@ } } }, - "400": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -58829,7 +105736,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -58890,8 +105797,148 @@ } } } + } + }, + "summary": "Updates Broker connection", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id}/bulk_migration": { + "get": { + "description": "Lists organization IDs associated with a connection type to be bulk migrated to universal broker\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listBrokerOrgsForBulkMigration", + "parameters": [ + { + "$ref": "#/components/parameters/ConnectionId" }, - "401": { + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/TenantId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetBrokerOrganizationsForBulkMigrationResponse" + } + } + }, + "description": "Returns a list of organization IDs for the bulk migration", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -59064,7 +106111,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -59595,295 +106642,73 @@ } } } - } - }, - "summary": "Creates Broker connection", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id}": { - "delete": { - "description": "Deletes an existing Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "deleteBrokerConnection", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "Broker connection was deleted", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } + } + }, + "summary": "List organizations for bulk migration", + "tags": [ + "BrokerConnections" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15" + ], + "x-snyk-api-resource": "connections", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "post": { + "description": "Performs bulk migration for integrations from legacy to universal broker\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "createBrokerOrgsForBulkMigration", + "parameters": [ + { + "$ref": "#/components/parameters/ConnectionId" }, - "400": { + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/TenantId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateBulkMigrationRequest" + } + } + } + }, + "responses": { + "201": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" + "$ref": "#/components/schemas/BulkMigrationCreateResponse" } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "The bulk migration process was started", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -59893,6 +106718,9 @@ "type": "string" } }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { @@ -59945,7 +106773,7 @@ } } }, - "401": { + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -60118,7 +106946,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -60651,13 +107479,12 @@ } } }, - "summary": "Deletes Broker connection", + "summary": "Performs bulk migration integrations to universal broker", "tags": [ "BrokerConnections" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-02-08~experimental", "2024-10-15" ], "x-snyk-api-resource": "connections", @@ -60667,10 +107494,12 @@ "category": "Universal Broker" }, "x-stability-level": "stable" - }, + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/contexts": { "get": { - "description": "Get all Broker connection data for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "getBrokerConnection", + "description": "List Deployment contexts for a given deployment ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listDeploymentContexts", "parameters": [ { "$ref": "#/components/parameters/TenantId" @@ -60681,22 +107510,6 @@ { "$ref": "#/components/parameters/DeploymentId" }, - { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, { "$ref": "#/components/parameters/EndingBefore" }, @@ -60715,6 +107528,19 @@ "minimum": 1, "type": "integer" } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } } ], "responses": { @@ -60722,11 +107548,11 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetBrokerConnectionResponse" + "$ref": "#/components/schemas/ListBrokerContextsResponse" } } }, - "description": "Returns a Broker connection", + "description": "Returns the list of broker contexts by deployment ID", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -60781,7 +107607,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -60961,7 +107787,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -61016,7 +107842,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -61196,7 +108022,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -61251,7 +108077,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -61431,7 +108257,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -61486,7 +108312,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -61666,7 +108492,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -61721,7 +108547,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -61729,16 +108555,16 @@ } } }, - "summary": "Get Broker connection", + "summary": "List Deployment contexts", "tags": [ - "BrokerConnections" + "BrokerContexts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ "2024-02-08~experimental", "2024-10-15" ], - "x-snyk-api-resource": "connections", + "x-snyk-api-resource": "contexts", "x-snyk-api-stability": "ga", "x-snyk-api-version": "2024-10-15", "x-snyk-documentation": { @@ -61746,9 +108572,9 @@ }, "x-stability-level": "stable" }, - "patch": { - "description": "Updates a Broker connection for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "updateBrokerConnection", + "post": { + "description": "Creates a new Broker Context\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "createBrokerContext", "parameters": [ { "$ref": "#/components/parameters/TenantId" @@ -61759,9 +108585,6 @@ { "$ref": "#/components/parameters/DeploymentId" }, - { - "$ref": "#/components/parameters/ConnectionId" - }, { "description": "The requested version of the endpoint to process the request", "example": "2021-06-04", @@ -61780,21 +108603,21 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/UpdateBrokerConnectionRequest" + "$ref": "#/components/schemas/CreateBrokerContextRequest" } } } }, "responses": { - "200": { + "201": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetBrokerConnectionResponse" + "$ref": "#/components/schemas/GetBrokerContextResponse" } } }, - "description": "Updates an existing Broker connection for an deployment", + "description": "Created Broker Context successfully", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -61804,6 +108627,9 @@ "type": "string" } }, + "location": { + "$ref": "#/components/headers/LocationHeader" + }, "snyk-request-id": { "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { @@ -61849,7 +108675,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -62029,7 +108855,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -62084,7 +108910,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -62264,7 +109090,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token. See [Revoke and regenerate a Snyk API token](https://docs.snyk.io/snyk-api/rest-api/authentication-for-api/revoke-and-regenerate-a-snyk-api-token).", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -62319,7 +109145,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -62499,7 +109325,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -62554,7 +109380,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -62734,7 +109560,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -62789,7 +109615,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -62797,16 +109623,16 @@ } } }, - "summary": "Updates Broker connection", + "summary": "Create broker Context", "tags": [ - "BrokerConnections" + "BrokerContexts" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ "2024-02-08~experimental", "2024-10-15" ], - "x-snyk-api-resource": "connections", + "x-snyk-api-resource": "contexts", "x-snyk-api-stability": "ga", "x-snyk-api-version": "2024-10-15", "x-snyk-documentation": { @@ -62815,35 +109641,19 @@ "x-stability-level": "stable" } }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections/{connection_id}/bulk_migration": { + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/credentials": { "get": { - "description": "Lists organization IDs associated with a connection type to be bulk migrated to universal broker\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "listBrokerOrgsForBulkMigration", + "description": "List Deployment credentials for a given deployment ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listDeploymentCredentials", "parameters": [ { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "$ref": "#/components/parameters/DeploymentId" + "$ref": "#/components/parameters/TenantId" }, { "$ref": "#/components/parameters/InstallId" }, { - "$ref": "#/components/parameters/TenantId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/parameters/DeploymentId" }, { "$ref": "#/components/parameters/EndingBefore" @@ -62863,6 +109673,19 @@ "minimum": 1, "type": "integer" } + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } } ], "responses": { @@ -62870,11 +109693,11 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetBrokerOrganizationsForBulkMigrationResponse" + "$ref": "#/components/schemas/ListDeploymentCredentialsResponse" } } }, - "description": "Returns a list of organization IDs for the bulk migration", + "description": "Returns the list of deployment credentials by ID", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -62929,7 +109752,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -63109,7 +109932,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -63164,7 +109987,242 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + }, + "401": { + "content": { + "application/vnd.api+json": { + "schema": { + "additionalProperties": false, + "example": { + "errors": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "jsonapi": { + "version": "1.0" + } + }, + "properties": { + "errors": { + "example": [ + { + "detail": "Permission denied for this resource", + "status": "403" + } + ], + "items": { + "additionalProperties": false, + "example": { + "detail": "Not Found", + "status": "404" + }, + "properties": { + "code": { + "description": "An application-specific error code, expressed as a string value.", + "example": "entity-not-found", + "type": "string" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.", + "example": "The request was missing these required fields: ...", + "type": "string" + }, + "id": { + "description": "A unique identifier for this particular occurrence of the problem.", + "example": "f16c31b5-6129-4571-add8-d589da9be524", + "format": "uuid", + "type": "string" + }, + "links": { + "additionalProperties": false, + "description": "A link that leads to further details about this particular occurrance of the problem.", + "example": { + "about": "https://example.com/about_this_error" + }, + "properties": { + "about": { + "example": "https://example.com/api/resource", + "oneOf": [ + { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + { + "additionalProperties": false, + "example": { + "href": "https://example.com/api/resource" + }, + "properties": { + "href": { + "description": "A string containing the link’s URL.", + "example": "https://example.com/api/resource", + "type": "string" + }, + "meta": { + "additionalProperties": true, + "description": "Free-form object that may contain non-standard information.", + "example": { + "key1": "value1", + "key2": { + "sub_key": "sub_value" + }, + "key3": [ + "array_value1", + "array_value2" + ] + }, + "type": "object" + } + }, + "required": [ + "href" + ], + "type": "object" + } + ] + } + }, + "type": "object" + }, + "meta": { + "additionalProperties": true, + "example": { + "key": "value" + }, + "type": "object" + }, + "source": { + "additionalProperties": false, + "example": { + "pointer": "/data/attributes" + }, + "properties": { + "parameter": { + "description": "A string indicating which URI query parameter caused the error.", + "example": "param1", + "type": "string" + }, + "pointer": { + "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", + "example": "/data/attributes", + "type": "string" + } + }, + "type": "object" + }, + "status": { + "description": "The HTTP status code applicable to this problem, expressed as a string value.", + "example": "400", + "pattern": "^[45]\\d\\d$", + "type": "string" + }, + "title": { + "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", + "example": "Bad request", + "type": "string" + } + }, + "required": [ + "status", + "detail" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "jsonapi": { + "additionalProperties": false, + "example": { + "version": "1.0" + }, + "properties": { + "version": { + "description": "Version of the JSON API specification this server supports.", + "example": "1.0", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "type": "string" + } + }, + "required": [ + "version" + ], + "type": "object" + } + }, + "required": [ + "jsonapi", + "errors" + ], + "type": "object" + } + } + }, + "description": "Unauthorized: the request requires an authentication token.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -63344,7 +110402,7 @@ } } }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -63399,7 +110457,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -63579,7 +110637,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -63634,7 +110692,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -63642,15 +110700,16 @@ } } }, - "summary": "List organizations for bulk migration", + "summary": "List Deployment credentials", "tags": [ - "BrokerConnections" + "DeploymentCredentials" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ + "2024-02-08~experimental", "2024-10-15" ], - "x-snyk-api-resource": "connections", + "x-snyk-api-resource": "credentials", "x-snyk-api-stability": "ga", "x-snyk-api-version": "2024-10-15", "x-snyk-documentation": { @@ -63659,20 +110718,17 @@ "x-stability-level": "stable" }, "post": { - "description": "Performs bulk migration for integrations from legacy to universal broker\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "createBrokerOrgsForBulkMigration", + "description": "Creates a new Deployment credential\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "createDeploymentCredential", "parameters": [ { - "$ref": "#/components/parameters/ConnectionId" - }, - { - "$ref": "#/components/parameters/DeploymentId" + "$ref": "#/components/parameters/TenantId" }, { "$ref": "#/components/parameters/InstallId" }, { - "$ref": "#/components/parameters/TenantId" + "$ref": "#/components/parameters/DeploymentId" }, { "description": "The requested version of the endpoint to process the request", @@ -63692,7 +110748,7 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/CreateBulkMigrationRequest" + "$ref": "#/components/schemas/CreateDeploymentCredentialRequest" } } } @@ -63702,11 +110758,11 @@ "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/BulkMigrationCreateResponse" + "$ref": "#/components/schemas/ListDeploymentCredentialsResponse" } } }, - "description": "The bulk migration process was started", + "description": "Created Deployment credential successfully", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -63764,7 +110820,7 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } @@ -63944,242 +111000,7 @@ } } }, - "description": "Bad Request: one or more parameters are invalid. Check the input to match the expected format. See [Snyk API](https://docs.snyk.io/snyk-api)", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - }, - "404": { - "content": { - "application/vnd.api+json": { - "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" - } - } - }, - "description": "Not Found: The resource you are trying to access could not be found. Review the request and try again.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -64234,14 +111055,14 @@ "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", "example": "2021-08-02", "schema": { - "example": "2021-08-02", + "example": "2021-08-02T00:00:00Z", "format": "date", "type": "string" } } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -64414,143 +111235,7 @@ } } }, - "description": "Internal Server Error: An unexpected error was encountered while attempting to process the request. Try again. If the error still occurs, contact support.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Performs bulk migration integrations to universal broker", - "tags": [ - "BrokerConnections" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-10-15" - ], - "x-snyk-api-resource": "connections", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/credentials": { - "get": { - "description": "List Deployment credentials for a given deployment ID\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "listDeploymentCredentials", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ListDeploymentCredentialsResponse" - } - } - }, - "description": "Returns the list of deployment credentials by ID", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -64612,7 +111297,7 @@ } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -64785,7 +111470,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -64847,7 +111532,7 @@ } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -65020,7 +111705,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -65081,8 +111766,122 @@ } } } + } + }, + "summary": "Create deployment credential", + "tags": [ + "DeploymentCredentials" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "credentials", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/credentials/{credential_id}": { + "delete": { + "description": "Deletes an existing Deployment credential for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "deleteDeploymentCredential", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" }, - "404": { + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/CredentialId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "Deployment credential was deleted", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + }, + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -65255,7 +112054,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -65317,7 +112116,7 @@ } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -65490,132 +112289,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "List Deployment credentials", - "tags": [ - "DeploymentCredentials" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "credentials", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "post": { - "description": "Creates a new Deployment credential\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "createDeploymentCredential", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/CreateDeploymentCredentialRequest" - } - } - } - }, - "responses": { - "201": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/ListDeploymentCredentialsResponse" - } - } - }, - "description": "Created Deployment credential successfully", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -65625,9 +112299,6 @@ "type": "string" } }, - "location": { - "$ref": "#/components/headers/LocationHeader" - }, "snyk-request-id": { "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", "schema": { @@ -65680,7 +112351,7 @@ } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -65853,7 +112524,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -65915,7 +112586,7 @@ } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -66088,7 +112759,145 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Deletes Deployment credential", + "tags": [ + "DeploymentCredentials" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "credentials", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "get": { + "description": "Get all Deployment credential data for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getDeploymentCredential", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" + }, + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/CredentialId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/EndingBefore" + }, + { + "$ref": "#/components/parameters/StartingAfter" + }, + { + "description": "Number of results to return per page", + "example": 10, + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "format": "int32", + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetDeploymentCredentialResponse" + } + } + }, + "description": "Returns a Deployment credential", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -66150,7 +112959,7 @@ } } }, - "404": { + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -66323,7 +113132,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -66385,7 +113194,7 @@ } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -66558,121 +113367,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Create deployment credential", - "tags": [ - "DeploymentCredentials" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "credentials", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - } - }, - "/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/credentials/{credential_id}": { - "delete": { - "description": "Deletes an existing Deployment credential for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "deleteDeploymentCredential", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "$ref": "#/components/parameters/CredentialId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "Deployment credential was deleted", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -66734,7 +113429,7 @@ } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -66907,7 +113602,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -66969,7 +113664,7 @@ } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -67142,7 +113837,135 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "headers": { + "deprecation": { + "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "schema": { + "example": "2021-07-01T00:00:00Z", + "format": "date-time", + "type": "string" + } + }, + "snyk-request-id": { + "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "schema": { + "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", + "format": "uuid", + "type": "string" + } + }, + "snyk-version-lifecycle-stage": { + "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", + "schema": { + "enum": [ + "wip", + "experimental", + "beta", + "ga", + "deprecated", + "sunset" + ], + "example": "ga", + "type": "string" + } + }, + "snyk-version-requested": { + "description": "The version of the endpoint requested by the caller.", + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + }, + "snyk-version-served": { + "description": "The version of the endpoint that was served by the API.", + "schema": { + "description": "Resolved API version", + "example": "2021-06-04", + "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", + "type": "string" + } + }, + "sunset": { + "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", + "example": "2021-08-02", + "schema": { + "example": "2021-08-02T00:00:00Z", + "format": "date", + "type": "string" + } + } + } + } + }, + "summary": "Get Deployment credential", + "tags": [ + "DeploymentCredentials" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "credentials", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + }, + "patch": { + "description": "Updates a Deployment credential for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateDeploymentCredential", + "parameters": [ + { + "$ref": "#/components/parameters/TenantId" + }, + { + "$ref": "#/components/parameters/InstallId" + }, + { + "$ref": "#/components/parameters/DeploymentId" + }, + { + "$ref": "#/components/parameters/CredentialId" + }, + { + "description": "The requested version of the endpoint to process the request", + "example": "2021-06-04", + "in": "query", + "name": "version", + "required": true, + "schema": { + "description": "Requested API version", + "example": "2021-06-04", + "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/UpdateDeploymentCredentialRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/GetDeploymentCredentialResponse" + } + } + }, + "description": "Updates an existing Deployment credential for an deployment", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -67204,7 +114027,7 @@ } } }, - "404": { + "400": { "content": { "application/vnd.api+json": { "schema": { @@ -67377,7 +114200,7 @@ } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Bad Request: A parameter provided as a part of the request was invalid.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -67439,7 +114262,7 @@ } } }, - "500": { + "401": { "content": { "application/vnd.api+json": { "schema": { @@ -67612,145 +114435,7 @@ } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } - }, - "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } - }, - "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } - }, - "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } - }, - "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } - } - } - } - }, - "summary": "Deletes Deployment credential", - "tags": [ - "DeploymentCredentials" - ], - "x-snyk-api-lifecycle": "released", - "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" - ], - "x-snyk-api-resource": "credentials", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "get": { - "description": "Get all Deployment credential data for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", - "operationId": "getDeploymentCredential", - "parameters": [ - { - "$ref": "#/components/parameters/TenantId" - }, - { - "$ref": "#/components/parameters/InstallId" - }, - { - "$ref": "#/components/parameters/DeploymentId" - }, - { - "$ref": "#/components/parameters/CredentialId" - }, - { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", - "in": "query", - "name": "version", - "required": true, - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } - }, - { - "$ref": "#/components/parameters/EndingBefore" - }, - { - "$ref": "#/components/parameters/StartingAfter" - }, - { - "description": "Number of results to return per page", - "example": 10, - "in": "query", - "name": "limit", - "schema": { - "default": 10, - "format": "int32", - "maximum": 100, - "minimum": 1, - "type": "integer" - } - } - ], - "responses": { - "200": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/GetDeploymentCredentialResponse" - } - } - }, - "description": "Returns a Deployment credential", + "description": "Unauthorized: the request requires an authentication token.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -67812,7 +114497,7 @@ } } }, - "400": { + "404": { "content": { "application/vnd.api+json": { "schema": { @@ -67985,7 +114670,7 @@ } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Not Found: The resource being operated on could not be found.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -68047,7 +114732,7 @@ } } }, - "401": { + "500": { "content": { "application/vnd.api+json": { "schema": { @@ -68220,7 +114905,7 @@ } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Internal Server Error: An error was encountered while attempting to process the request.", "headers": { "deprecation": { "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", @@ -68281,1562 +114966,1529 @@ } } } + } + }, + "summary": "Updates Deployment credential", + "tags": [ + "DeploymentCredentials" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-02-08~experimental", + "2024-10-15" + ], + "x-snyk-api-resource": "credentials", + "x-snyk-api-stability": "ga", + "x-snyk-api-version": "2024-10-15", + "x-snyk-documentation": { + "category": "Universal Broker" + }, + "x-stability-level": "stable" + } + }, + "/tenants/{tenant_id}/inventory/assets": { + "get": { + "description": "Retrieves a polymorphic list of all asset types for a given tenant.\nThe response includes different asset types (containers, container images, etc.)\nin a single unified response following the JSON:API specification.\n\nThis endpoint supports both simple listing and synchronous search with filtering,\nsorting, and cursor-based pagination through query parameters.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listAssetsTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RsqlFilter" + }, + { + "description": "Comma-separated sort fields. Prefix with `-` for descending order.\n\n**Supported fields:**\n- `created_at` - Asset creation timestamp\n- `updated_at` - Asset last update timestamp\n- `type` - Asset type (container_images)\n- `class` - Asset class\n- `risk_score` - Asset risk score (max across project sources)\n- `issues` - Issue counts by severity (critical, high, medium, low)\n- `built_at` - Image build timestamp (container images only)\n- `last_scan` - Last scan timestamp\n- `sbom_name` - SBOM name (SBOMs only)\n- `format` - SBOM format/standard (SBOMs only)\n- `document_version` - SBOM document version (SBOMs only)\n- `sbom_created_at` - SBOM creation timestamp (SBOMs only)\n", + "example": "-created_at", + "in": "query", + "name": "sort", + "schema": { + "type": "string" + } + }, + { + "description": "Number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "example": "v1.MTIzNDU2Nzg5MHxhYmNkZWY=", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "example": "v1.MTIzNDU2Nzg5MHxhYmNkZWY=", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + }, + { + "$ref": "#/components/parameters/MetaCount" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetListResponse" + } + } + }, + "description": "Successful response with a polymorphic list of assets", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List or search all assets (synchronous) (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Partially updates multiple assets in a single request. \nMaximum of 100 assets can be updated per request.\nThe operation is transactional - all updates succeed or all fail.\nSupports updating class, labels (add/remove), and tags (add/remove).\n\n#### Required permissions\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateAssetsBulkTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetBulkPatchRequestBody" + } + } + }, + "required": true + }, + "responses": { + "204": { + "description": "Assets updated successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Bulk update asset attributes (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/filters": { + "get": { + "description": "Returns a list of valid field names that can be used for filtering assets using RSQL.\nEach field includes its name, data type, and which asset types it applies to.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getFilterFieldsTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter the available filter fields", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/FilterFieldsResponse" + } + } + }, + "description": "List of available filter fields", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get available filter fields (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/filters/{filter_id}/values": { + "get": { + "description": "Returns a list of distinct values for a specific filter field.\nUseful for building autocomplete functionality in filter UIs.\n\nUse the UUID from the filter fields list endpoint to identify which field to query.\n\nFor object filter values, both the keys and values are returned.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getFilterValuesTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "The UUID of the filter field to get values for (from the filter fields list endpoint)", + "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "in": "path", + "name": "filter_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "Full text search term to filter the list of values. If keys_only is true, this will filter the keys of the object filter values. If key is provided, this will filter the value for the specific key of the object filter values.", + "example": "prod", + "in": "query", + "name": "q", + "schema": { + "maxLength": 100, + "type": "string" + } }, - "404": { + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Return only the keys of the object filter values", + "in": "query", + "name": "keys_only", + "schema": { + "type": "boolean" + } + }, + { + "description": "Return only the value for a specific key of the object filter values", + "in": "query", + "name": "key", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" + "$ref": "#/components/schemas/FilterValuesResponse" } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "List of filter values", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get filter value suggestions (autocomplete) (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/groups": { + "get": { + "description": "Returns a list of valid group field names that can be used for grouping assets.\nEach field includes its name, data type, and which asset types it applies to.\nCommon fields such as `class` and `org_id` (the Snyk organization that discovered\nthe asset) apply to every asset type.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getGroupFieldsTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Comma-separated list of asset types to filter the available group fields", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" + "$ref": "#/components/schemas/GroupFieldsResponse" } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", - "headers": { - "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "description": "List of available group fields", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Get Deployment credential", + "summary": "Get available group fields (Early Access)", "tags": [ - "DeploymentCredentials" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" + "2024-10-15~beta" ], - "x-snyk-api-resource": "credentials", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" - }, - "patch": { - "description": "Updates a Deployment credential for an deployment\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`\n\n- `Edit Tenant Details (tenant.edit)`", - "operationId": "updateDeploymentCredential", + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/groups/{group_field_id}/values": { + "get": { + "description": "Returns aggregated values for a specific group field id, showing the count of assets\nfor each distinct value.\n\nUse the UUID from the group fields list endpoint to identify which field to query.\n\nGrouping by `org_id` buckets assets by the Snyk organization that discovered them:\none bucket per organization at group or tenant scope, and a single bucket at org scope.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getGroupValuesTenant", "parameters": [ { - "$ref": "#/components/parameters/TenantId" + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/InstallId" + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } }, { - "$ref": "#/components/parameters/DeploymentId" + "description": "The UUID of the group field to get values for (from the group fields list endpoint)", + "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "in": "path", + "name": "group_field_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } }, { - "$ref": "#/components/parameters/CredentialId" + "description": "Comma-separated list of asset types to filter the aggregation", + "example": "container_images", + "in": "query", + "name": "asset_types", + "schema": { + "type": "string" + } }, { - "description": "The requested version of the endpoint to process the request", - "example": "2021-06-04", + "$ref": "#/components/parameters/RsqlFilterGroupValues" + }, + { + "$ref": "#/components/parameters/SortGroupValues" + }, + { + "description": "Number of results to return", "in": "query", - "name": "version", - "required": true, + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", "type": "string" } - } - ], - "requestBody": { - "content": { - "application/vnd.api+json": { - "schema": { - "$ref": "#/components/schemas/UpdateDeploymentCredentialRequest" - } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" } + }, + { + "$ref": "#/components/parameters/MetaFieldsGroupValues" + }, + { + "$ref": "#/components/parameters/AggregateGroupValues" } - }, + ], "responses": { "200": { "content": { "application/vnd.api+json": { "schema": { - "$ref": "#/components/schemas/GetDeploymentCredentialResponse" + "$ref": "#/components/schemas/GroupValuesResponse" } } }, - "description": "Updates an existing Deployment credential for an deployment", + "description": "List of group values with aggregated metadata", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get group value aggregation (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/searches": { + "post": { + "description": "Initiates an asynchronous search for assets and returns a redirect to the search results endpoint\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "createAssetSearchTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/CreateSearchRequestBody" + } + } + } + }, + "responses": { + "302": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, "jsonapi": { "additionalProperties": false, - "example": { - "version": "1.0" - }, "properties": { "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", "type": "string" } }, - "required": [ - "version" - ], "type": "object" } }, - "required": [ - "jsonapi", - "errors" - ], "type": "object" } } }, - "description": "Bad Request: A parameter provided as a part of the request was invalid.", + "description": "Found - Redirects to search results endpoint", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", + "$ref": "#/components/headers/DeprecationHeader" + }, + "location": { + "description": "URL to retrieve search results", "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", + "format": "uri", "type": "string" } }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Create an asset search (asynchronous) (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/searches/{search_id}/results": { + "get": { + "description": "Gets paginated results for a previously initiated asset search\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getAssetSearchResultsTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SearchId" + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Comma-separated sort fields. Prefix with `-` for descending order.\n\n**Supported fields:**\n- `created_at` - Asset creation timestamp\n- `updated_at` - Asset last update timestamp\n- `type` - Asset type (container_images)\n- `class` - Asset class\n- `risk_score` - Asset risk score (max across project sources)\n- `issues` - Issue counts by severity (critical, high, medium, low)\n- `built_at` - Image build timestamp (container images only)\n- `last_scan` - Last scan timestamp\n- `sbom_name` - SBOM name (SBOMs only)\n- `format` - SBOM format/standard (SBOMs only)\n- `document_version` - SBOM document version (SBOMs only)\n- `sbom_created_at` - SBOM creation timestamp (SBOMs only)\n", + "in": "query", + "name": "sort", + "schema": { + "example": "-created_at", + "type": "string" + } + }, + { + "description": "Number of results to return", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Cursor for next page", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for previous page", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" + "$ref": "#/components/schemas/AssetListResponse" } + } + }, + "description": "Search results retrieved successfully", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, - "401": { + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Retrieve asset search results (asynchronous) (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/{asset_id}": { + "get": { + "description": "Retrieves a single asset by its unique identifier.\nThe response includes the asset's details in JSON:API format.\nThe asset type is determined from the database and the appropriate\ndetails are returned polymorphically.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "getAssetTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/SparseFieldsets" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/PolymorphicAssetData" }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, + "links": { "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "self": { + "description": "Link to the current document", + "format": "uri", "type": "string" } }, - "required": [ - "version" - ], "type": "object" } }, "required": [ - "jsonapi", - "errors" + "data" ], "type": "object" } } }, - "description": "Unauthorized: the request requires an authentication token.", + "description": "Asset retrieved successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Get a single asset by ID (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + }, + "patch": { + "description": "Partially updates an asset's attributes.\nSupports updating class, labels (add/remove), and tags (add/remove).\nAt least one attribute must be provided in the request.\n\n#### Required permissions\n\n- `Edit Tenant Details (tenant.edit)`", + "operationId": "updateAssetTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/vnd.api+json": { + "schema": { + "$ref": "#/components/schemas/AssetPatchRequestBody" + } + } + }, + "required": true + }, + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" + "data": { + "$ref": "#/components/schemas/PolymorphicAssetData" }, "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, + "$ref": "#/components/schemas/JsonApiVersion" + }, + "links": { + "description": "Self-referencing link", "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", + "self": { + "description": "Link to the current resource", + "format": "uri", "type": "string" } }, "required": [ - "version" + "self" ], "type": "object" } }, "required": [ - "jsonapi", - "errors" + "data" ], "type": "object" } } }, - "description": "Not Found: The resource being operated on could not be found.", + "description": "Asset updated successfully", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", - "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" - } + "$ref": "#/components/headers/SunsetHeader" } } }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "Update asset attributes (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "asset", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/{asset_id}/relationships/projects": { + "get": { + "description": "Retrieves a paginated list of Snyk projects linked to this asset with full attributes.\nReturns the `id`, `type`, and `attributes` of each related project.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listAssetProjectsTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + }, + { + "description": "Filter projects by canonical status.\n- `with`: Returns all projects (canonical attribute is populated).\n- `only`: Returns only canonical projects (those used for vulnerability counts).\n- `none`: Returns only non-canonical projects.\nWhen omitted, returns all projects without canonical filtering.\n", + "in": "query", + "name": "canonical", + "schema": { + "enum": [ + "with", + "only", + "none" + ], + "type": "string" + } + }, + { + "description": "Filter projects by target ID. When provided, returns only projects that belong to\nthe specified target. When omitted, returns projects from all targets.\n", + "in": "query", + "name": "target_id", + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "$ref": "#/components/parameters/ProjectSortParam" + } + ], + "responses": { + "200": { "content": { "application/vnd.api+json": { "schema": { - "additionalProperties": false, - "example": { - "errors": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "jsonapi": { - "version": "1.0" - } - }, - "properties": { - "errors": { - "example": [ - { - "detail": "Permission denied for this resource", - "status": "403" - } - ], - "items": { - "additionalProperties": false, - "example": { - "detail": "Not Found", - "status": "404" - }, - "properties": { - "code": { - "description": "An application-specific error code, expressed as a string value.", - "example": "entity-not-found", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "example": "The request was missing these required fields: ...", - "type": "string" - }, - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "example": "f16c31b5-6129-4571-add8-d589da9be524", - "format": "uuid", - "type": "string" - }, - "links": { - "additionalProperties": false, - "description": "A link that leads to further details about this particular occurrance of the problem.", - "example": { - "about": "https://example.com/about_this_error" - }, - "properties": { - "about": { - "example": "https://example.com/api/resource", - "oneOf": [ - { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - { - "additionalProperties": false, - "example": { - "href": "https://example.com/api/resource" - }, - "properties": { - "href": { - "description": "A string containing the link’s URL.", - "example": "https://example.com/api/resource", - "type": "string" - }, - "meta": { - "additionalProperties": true, - "description": "Free-form object that may contain non-standard information.", - "example": { - "key1": "value1", - "key2": { - "sub_key": "sub_value" - }, - "key3": [ - "array_value1", - "array_value2" - ] - }, - "type": "object" - } - }, - "required": [ - "href" - ], - "type": "object" - } - ] - } - }, - "type": "object" - }, - "meta": { - "additionalProperties": true, - "example": { - "key": "value" - }, - "type": "object" - }, - "source": { - "additionalProperties": false, - "example": { - "pointer": "/data/attributes" - }, - "properties": { - "parameter": { - "description": "A string indicating which URI query parameter caused the error.", - "example": "param1", - "type": "string" - }, - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.", - "example": "/data/attributes", - "type": "string" - } - }, - "type": "object" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "example": "400", - "pattern": "^[45]\\d\\d$", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization.", - "example": "Bad request", - "type": "string" - } - }, - "required": [ - "status", - "detail" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "jsonapi": { - "additionalProperties": false, - "example": { - "version": "1.0" - }, - "properties": { - "version": { - "description": "Version of the JSON API specification this server supports.", - "example": "1.0", - "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$", - "type": "string" - } - }, - "required": [ - "version" - ], - "type": "object" - } - }, - "required": [ - "jsonapi", - "errors" - ], - "type": "object" + "$ref": "#/components/schemas/ProjectRelationshipListResponse" } } }, - "description": "Internal Server Error: An error was encountered while attempting to process the request.", + "description": "Successfully retrieved linked projects", "headers": { "deprecation": { - "description": "The deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n", - "schema": { - "example": "2021-07-01T00:00:00Z", - "format": "date-time", - "type": "string" - } + "$ref": "#/components/headers/DeprecationHeader" }, "snyk-request-id": { - "description": "A unique id used for tracking this request. If you are reporting an issue to Snyk it's very helpful to provide this ID.\n", - "schema": { - "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef", - "format": "uuid", - "type": "string" - } + "$ref": "#/components/headers/RequestIdResponseHeader" }, "snyk-version-lifecycle-stage": { - "description": "The version stage of the endpoint. This stage describes the guarantees Snyk provides surrounding stability of the endpoint.\n", - "schema": { - "enum": [ - "wip", - "experimental", - "beta", - "ga", - "deprecated", - "sunset" - ], - "example": "ga", - "type": "string" - } + "$ref": "#/components/headers/VersionStageResponseHeader" }, "snyk-version-requested": { - "description": "The version of the endpoint requested by the caller.", - "schema": { - "description": "Requested API version", - "example": "2021-06-04", - "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$", - "type": "string" - } + "$ref": "#/components/headers/VersionRequestedResponseHeader" }, "snyk-version-served": { - "description": "The version of the endpoint that was served by the API.", - "schema": { - "description": "Resolved API version", - "example": "2021-06-04", - "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$", - "type": "string" - } + "$ref": "#/components/headers/VersionServedResponseHeader" }, "sunset": { - "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. For information purposes only. Returned as a date in the format: YYYY-MM-DD", - "example": "2021-08-02", + "$ref": "#/components/headers/SunsetHeader" + } + } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" + } + }, + "summary": "List projects for an asset (Early Access)", + "tags": [ + "Inventory Assets" + ], + "x-snyk-api-lifecycle": "released", + "x-snyk-api-releases": [ + "2024-10-15~beta" + ], + "x-snyk-api-resource": "project", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" + } + }, + "/tenants/{tenant_id}/inventory/assets/{asset_id}/relationships/targets": { + "get": { + "description": "Retrieves a paginated list of Snyk targets linked to this asset with full attributes.\nReturns the `id`, `type`, and `attributes` of each related target.\n\n#### Required permissions\n\n- `View Tenant Details (tenant.read)`", + "operationId": "listAssetTargetsTenant", + "parameters": [ + { + "description": "The unique identifier of the tenant", + "in": "path", + "name": "tenant_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The unique identifier of the asset", + "in": "path", + "name": "asset_id", + "required": true, + "schema": { + "format": "uuid", + "type": "string" + } + }, + { + "description": "The requested API version", + "in": "query", + "name": "version", + "schema": { + "example": "2024-10-15", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + { + "description": "Cursor for fetching the next page of results", + "in": "query", + "name": "starting_after", + "schema": { + "type": "string" + } + }, + { + "description": "Cursor for fetching the previous page of results", + "in": "query", + "name": "ending_before", + "schema": { + "type": "string" + } + }, + { + "description": "Maximum number of results to return per page", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "minimum": 10, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.api+json": { "schema": { - "example": "2021-08-02T00:00:00Z", - "format": "date", - "type": "string" + "$ref": "#/components/schemas/TargetRelationshipListResponse" } } + }, + "description": "Successfully retrieved linked targets", + "headers": { + "deprecation": { + "$ref": "#/components/headers/DeprecationHeader" + }, + "snyk-request-id": { + "$ref": "#/components/headers/RequestIdResponseHeader" + }, + "snyk-version-lifecycle-stage": { + "$ref": "#/components/headers/VersionStageResponseHeader" + }, + "snyk-version-requested": { + "$ref": "#/components/headers/VersionRequestedResponseHeader" + }, + "snyk-version-served": { + "$ref": "#/components/headers/VersionServedResponseHeader" + }, + "sunset": { + "$ref": "#/components/headers/SunsetHeader" + } } + }, + "400": { + "$ref": "#/components/responses/400" + }, + "401": { + "$ref": "#/components/responses/401" + }, + "403": { + "$ref": "#/components/responses/403" + }, + "404": { + "$ref": "#/components/responses/404" + }, + "500": { + "$ref": "#/components/responses/500" } }, - "summary": "Updates Deployment credential", + "summary": "List targets for an asset (Early Access)", "tags": [ - "DeploymentCredentials" + "Inventory Assets" ], "x-snyk-api-lifecycle": "released", "x-snyk-api-releases": [ - "2024-02-08~experimental", - "2024-10-15" + "2024-10-15~beta" ], - "x-snyk-api-resource": "credentials", - "x-snyk-api-stability": "ga", - "x-snyk-api-version": "2024-10-15", - "x-snyk-documentation": { - "category": "Universal Broker" - }, - "x-stability-level": "stable" + "x-snyk-api-resource": "target", + "x-snyk-api-stability": "beta", + "x-snyk-api-version": "2024-10-15~beta", + "x-stability-level": "beta" } }, "/tenants/{tenant_id}/memberships": { @@ -70739,7 +117391,7 @@ "name": "Assets" }, { - "description": "The OpenAPI specification for container-importer rest API.", + "description": "The OpenAPI specification for sast-rule-extensions-service.", "name": "OpenAPI" } ], diff --git a/docs/snyk-api/changelog.md b/docs/snyk-api/changelog.md index c975391ed1d1..2b064f819d37 100644 --- a/docs/snyk-api/changelog.md +++ b/docs/snyk-api/changelog.md @@ -1,3 +1,609 @@ +## 2026-03-25 + +### GET - `/tenants` - Updated +- added the new optional `query` request parameter `name` + + + +### POST - `/tenants/{tenant_id}/brokers/installs/{install_id}/deployments` - Updated +- added the required property `data/attributes/created_at` to the response with the `201` status + +- added the required property `data/attributes/updated_at` to the response with the `201` status + + + +### GET - `/tenants/{tenant_id}/brokers/installs/{install_id}/deployments` - Updated +- added the required property `data/items/attributes/created_at` to the response with the `200` status + +- added the required property `data/items/attributes/updated_at` to the response with the `200` status + + + +### PATCH - `/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}` - Updated +- added the required property `data/attributes/created_at` to the response with the `200` status + +- added the required property `data/attributes/updated_at` to the response with the `200` status + + + +### POST - `/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/contexts` - Added +- Creates a new Broker Context + +#### Required permissions + +- `View Tenant Details (tenant.read)` + +- `Edit Tenant Details (tenant.edit)` + + +### GET - `/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/contexts` - Added +- List Deployment contexts for a given deployment ID + +#### Required permissions + +- `View Tenant Details (tenant.read)` + + +### PATCH - `/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}` - Added +- Updates a Broker Context for an deployment + +#### Required permissions + +- `View Tenant Details (tenant.read)` + +- `Edit Tenant Details (tenant.edit)` + + +### GET - `/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}` - Added +- List Broker context for a given broker context ID + +#### Required permissions + +- `View Tenant Details (tenant.read)` + + +### DELETE - `/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}` - Added +- Deletes an existing broker context + +#### Required permissions + +- `View Tenant Details (tenant.read)` + +- `Edit Tenant Details (tenant.edit)` + + +### DELETE - `/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}/integrations/{integration_id}` - Added +- Deletes an existing Broker context association for an integration + +#### Required permissions + +- `View Tenant Details (tenant.read)` + +- `Edit Tenant Details (tenant.edit)` + + +### PATCH - `/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}/integration` - Added +- Updates an integration to be associated with a Broker context + +#### Required permissions + +- `View Tenant Details (tenant.read)` + +- `Edit Tenant Details (tenant.edit)` + + +### GET - `/tenants/{tenant_id}/brokers/installs/{install_id}/connections/{connection_id}/contexts` - Added +- List Broker contexts for a given broker connection ID + +#### Required permissions + +- `View Tenant Details (tenant.read)` + + +### GET - `/tenants/{tenant_id}/brokers/deployments` - Updated +- added the required property `data/items/attributes/created_at` to the response with the `200` status + +- added the required property `data/items/attributes/updated_at` to the response with the `200` status + + + +### GET - `/self/personal_access_tokens` - Added +- List personal access tokens + + +### DELETE - `/self/personal_access_tokens/{personal_access_token_id}` - Added +- Delete a personal access token + + +### PATCH - `/orgs/{org_id}/settings/opensource/{ecosystem}/private-registries` - Added +- Updates the publicly-accessible private registry settings of a specific Open Source Ecosystem for an Organization. +This endpoint has JSON-PATCH semantics: only provided integrations are updated. +Provide an empty value for `urls` to remove an integration. + +#### Required permissions + +- `Edit Organization (org.edit)` + + +### GET - `/orgs/{org_id}/settings/opensource/{ecosystem}/private-registries` - Added +- Retrieves the publicly-accessible private registry settings of a specific Open Source Ecosystem for an Organization. +These are registries (e.g. JFrog Artifactory, Sonatype Nexus) hosted on a public URL and reached directly with +credentials, without the Snyk Broker. + +#### Required permissions + +- `View Organization (org.read)` + + +### PATCH - `/orgs/{org_id}/settings/opensource/{ecosystem}/broker` - Added +- Updates all Broker settings of a specific Open Source Ecosystem for an Organization. +This endpoint has JSON-PATCH semantics: only provided Broker integrations are updated. +Provide an empty value for `urls` to remove a Broker integration. + +#### Required permissions + +- `Edit Organization (org.edit)` + + +### GET - `/orgs/{org_id}/settings/opensource/{ecosystem}/broker` - Added +- Retrieves all Broker settings of a specific Open Source Ecosystem for an Organization + +#### Required permissions + +- `View Organization (org.read)` + + +### POST - `/orgs/{org_id}/settings/opensource/broker` - Added +- Enables the opensource broker setting for an organization by installing the Snyk App + +#### Required permissions + +- `Install Apps (org.app.install)` + + +### GET - `/orgs/{org_id}/settings/opensource/broker` - Added +- Returns whether the opensource broker setting is enabled for the organization + +#### Required permissions + +- `View Organization (org.read)` + + +### DELETE - `/orgs/{org_id}/settings/opensource/broker` - Added +- Deletes the opensource broker setting for the organization by uninstalling the Snyk App + +#### Required permissions + +- `Install Apps (org.app.install)` + + +### GET - `/orgs/{org_id}/projects/{project_id}/sbom` - Updated +- added the new optional `query` request parameter `go_module_level` + + + +### POST - `/orgs/{org_id}/policies` - Updated +- removed the required property `data/attributes/action/data/ignore_type` from the response with the `201` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the request property `data/attributes/action/data/expires` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the request property `data/attributes/action/data/ignore_type` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the request property `data/attributes/action/data/reason` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/attributes/action/data/expires` from the response with the `201` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/attributes/action/data/reason` from the response with the `201` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added discriminator to `data/attributes/action/data` request property + +- added `#/components/schemas/PolicyActionIgnoreDataWontFix, #/components/schemas/PolicyActionIgnoreDataTemporaryIgnore, #/components/schemas/PolicyActionIgnoreDataNotVulnerable` to the `data/attributes/action/data` request property `oneOf` list + +- added the optional property `data/attributes/created_by/actor_source` to the response with the `201` status + +- added the optional property `data/attributes/created_by/external_id` to the response with the `201` status + +- added the optional property `data/attributes/created_by/origin` to the response with the `201` status + +- added discriminator to `data/attributes/action/data` response property for the response status `201` + +- added `#/components/schemas/PolicyActionIgnoreDataWontFix, #/components/schemas/PolicyActionIgnoreDataTemporaryIgnore, #/components/schemas/PolicyActionIgnoreDataNotVulnerable` to the `data/attributes/action/data` response property `oneOf` list for the response status `201` + + + +### GET - `/orgs/{org_id}/policies` - Updated +- removed the required property `data/items/attributes/action/data/ignore_type` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/items/attributes/action/data/expires` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/items/attributes/action/data/reason` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the optional property `data/items/attributes/created_by/actor_source` to the response with the `200` status + +- added the optional property `data/items/attributes/created_by/external_id` to the response with the `200` status + +- added the optional property `data/items/attributes/created_by/origin` to the response with the `200` status + +- added discriminator to `data/items/attributes/action/data` response property for the response status `200` + +- added `#/components/schemas/PolicyActionIgnoreDataWontFix, #/components/schemas/PolicyActionIgnoreDataTemporaryIgnore, #/components/schemas/PolicyActionIgnoreDataNotVulnerable` to the `data/items/attributes/action/data` response property `oneOf` list for the response status `200` + + + +### PATCH - `/orgs/{org_id}/policies/{policy_id}` - Updated +- removed the required property `data/attributes/action/data/ignore_type` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the request property `data/attributes/action/data/expires` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the request property `data/attributes/action/data/ignore_type` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the request property `data/attributes/action/data/reason` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/attributes/action/data/expires` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/attributes/action/data/reason` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added discriminator to `data/attributes/action/data` request property + +- added `#/components/schemas/PolicyActionIgnoreDataWontFix, #/components/schemas/PolicyActionIgnoreDataTemporaryIgnore, #/components/schemas/PolicyActionIgnoreDataNotVulnerable` to the `data/attributes/action/data` request property `oneOf` list + +- added the optional property `data/attributes/created_by/actor_source` to the response with the `200` status + +- added the optional property `data/attributes/created_by/external_id` to the response with the `200` status + +- added the optional property `data/attributes/created_by/origin` to the response with the `200` status + +- added discriminator to `data/attributes/action/data` response property for the response status `200` + +- added `#/components/schemas/PolicyActionIgnoreDataWontFix, #/components/schemas/PolicyActionIgnoreDataTemporaryIgnore, #/components/schemas/PolicyActionIgnoreDataNotVulnerable` to the `data/attributes/action/data` response property `oneOf` list for the response status `200` + + + +### GET - `/orgs/{org_id}/policies/{policy_id}` - Updated +- removed the required property `data/attributes/action/data/ignore_type` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/attributes/action/data/expires` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- removed the optional property `data/attributes/action/data/reason` from the response with the `200` status +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the optional property `data/attributes/created_by/actor_source` to the response with the `200` status + +- added the optional property `data/attributes/created_by/external_id` to the response with the `200` status + +- added the optional property `data/attributes/created_by/origin` to the response with the `200` status + +- added discriminator to `data/attributes/action/data` response property for the response status `200` + +- added `#/components/schemas/PolicyActionIgnoreDataWontFix, #/components/schemas/PolicyActionIgnoreDataTemporaryIgnore, #/components/schemas/PolicyActionIgnoreDataNotVulnerable` to the `data/attributes/action/data` response property `oneOf` list for the response status `200` + + + +### GET - `/orgs/{org_id}/issues` - Updated +- the `data/items/attributes/coordinates/items/remedies/items/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- the `data/items/attributes/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new `secrets` enum value to the `data/items/attributes/type` response property for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new optional `query` request parameter `include_code_flows` + +- added the new enum value `secrets` to the `query` request parameter `type` + +- added the optional property `data/items/attributes/coordinates/items/code_flows` to the response with the `200` status + +- added the optional property `data/items/attributes/coordinates/items/code_flows_omitted` to the response with the `200` status + + + +### GET - `/orgs/{org_id}/issues/{issue_id}` - Updated +- the `data/attributes/coordinates/items/remedies/items/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- the `data/attributes/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new `secrets` enum value to the `data/attributes/type` response property for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new optional `query` request parameter `include_code_flows` + +- added the non-success response with the status `501` + +- added the optional property `data/attributes/coordinates/items/code_flows` to the response with the `200` status + +- added the optional property `data/attributes/coordinates/items/code_flows_omitted` to the response with the `200` status + + + +### POST - `/orgs/{org_id}/export` - Updated +- added the new optional request property `data/attributes/filters/cve` + +- added the new optional request property `data/attributes/filters/issue_status` + +- added the new optional request property `data/attributes/filters/issue_type` + +- added the new optional request property `data/attributes/filters/nvd_severity` + +- added the new optional request property `data/attributes/filters/project_origin` + +- added the new optional request property `data/attributes/filters/project_target_display_name` + +- added the new optional request property `data/attributes/filters/project_target_ref` + +- added the new optional request property `data/attributes/filters/reachability` + + + +### POST - `/orgs/{org_id}/container_import/{integration_id}/policy` - Added +- Create a container registry import policy + +#### Required permissions + +- `Edit integrations (org.integration.edit)` + + +### PATCH - `/orgs/{org_id}/container_import/{integration_id}/policy` - Added +- Update a container registry import policy + +#### Required permissions + +- `Edit integrations (org.integration.edit)` + + +### GET - `/orgs/{org_id}/container_import/{integration_id}/policy` - Added +- Get a container registry import policy + +#### Required permissions + +- `View integrations (org.integration.read)` + + +### DELETE - `/orgs/{org_id}/container_import/{integration_id}/policy` - Added +- Delete a container registry import policy + +#### Required permissions + +- `Edit integrations (org.integration.edit)` + + +### POST - `/orgs/{org_id}/container_import/{integration_id}/policy/dry_run` - Updated +- the `data/attributes/policy/schedule_frequency_hours` request property`s min was decreased from `12.00` to `2.00` + + + +### GET - `/orgs/{org_id}/container_import/{integration_id}/policy/dry_run/{job_id}` - Updated +- the `data/attributes/policy/schedule_frequency_hours` response property`s min was decreased from `12.00` to `2.00` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) + + +### POST - `/groups/{group_id}/settings/opensource/broker` - Added +- Enables the opensource broker setting for a group by installing the Snyk App + +#### Required permissions + +- `Install Apps (group.app.install)` + + +### GET - `/groups/{group_id}/settings/opensource/broker` - Added +- Returns whether the opensource broker setting is enabled for the group + +#### Required permissions + +- `View Groups (group.read)` + + +### DELETE - `/groups/{group_id}/settings/opensource/broker` - Added +- Deletes the opensource broker setting for the group by uninstalling the Snyk App + +#### Required permissions + +- `Install Apps (group.app.install)` + + +### POST - `/groups/{group_id}/secrets/rule_extensions` - Added +- Secrets rule extensions adapt Snyk Secret analysis, making Snyk Secret Rules more suitable for your code. Only published secrets rule extensions with assignment would be applied to Snyk scans. + +#### Required permissions + +- `group.rule_extension.create` + + +### GET - `/groups/{group_id}/secrets/rule_extensions` - Added +- Get a list of all secrets rule extensions for the requested Group ID and its child Org(s). + +#### Required permissions + +- `group.rule_extension.read` + + +### PATCH - `/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}` - Added +- Update the secrets rule extension for the requested rule extension ID. + +#### Required permissions + +- `group.rule_extension.edit` + + +### GET - `/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}` - Added +- Get the secrets rule extension for the requested rule extension ID. + +#### Required permissions + +- `group.rule_extension.read` + + +### DELETE - `/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}` - Added +- Delete the secrets rule extension for the requested rule extension ID. Draft rule extensions can be deleted unconditionally. Published rule extensions can only be deleted if they have no assignments. + +#### Required permissions + +- `group.rule_extension.delete` + + +### POST - `/groups/{group_id}/sast/rule_extensions` - Added +- SAST rule extensions adapt Snyk SAST analysis, making Snyk Code Rules more suitable for your code. You must associate SAST rule extensions with particular Snyk Code Rule Keys. Only published SAST rule extensions with assignment would be applied to Snyk SAST scans. + +#### Required permissions + +- `group.rule_extension.create` + + +### GET - `/groups/{group_id}/sast/rule_extensions` - Added +- Get a list of all the SAST rule extensions for the requested Group ID and its child Org(s). + +#### Required permissions + +- `group.rule_extension.read` + + +### PATCH - `/groups/{group_id}/sast/rule_extensions/{rule_extension_id}` - Added +- Update the SAST rule extension for the requested SAST rule extension ID + +#### Required permissions + +- `group.rule_extension.edit` + + +### GET - `/groups/{group_id}/sast/rule_extensions/{rule_extension_id}` - Added +- Get the SAST rule extension for the requested SAST rule extension ID + +#### Required permissions + +- `group.rule_extension.read` + + +### DELETE - `/groups/{group_id}/sast/rule_extensions/{rule_extension_id}` - Added +- Delete the SAST rule extension for the requested SAST rule extension ID. Draft rule extensions can be deleted unconditionally. Published rule extensions can only be deleted if they have no assignments. All assignments must be removed before a published rule extension can be deleted. + +#### Required permissions + +- `group.rule_extension.delete` + + +### POST - `/groups/{group_id}/sast/rule_extensions/tests` - Added +- Create a test on a Snyk Code project to understand the impact of the input SAST Rule Extension. + +#### Required permissions + +- `group.rule_extension.read` + + +### GET - `/groups/{group_id}/sast/rule_extensions/tests/{test_id}` - Added +- Get the SAST rule extension test status for a requested Snyk Code project. + +#### Required permissions + +- `group.rule_extension.read` + + +### GET - `/groups/{group_id}/sast/rule_extensions/tests/{test_id}/results` - Added +- Get the test result of a Snyk Code project to understand the impact of the input SAST Rule Extension. + +#### Required permissions + +- `group.rule_extension.read` + + +### POST - `/groups/{group_id}/rule_extensions/assignments` - Added +- Assign published rule extensions with Group or Organization scope. + +#### Required permissions + +- `group.rule_extension.edit` + + +### GET - `/groups/{group_id}/rule_extensions/assignments` - Added +- Returns a paginated list of all rule extension assignments for the requested group. + +**Pagination:** The `starting_after` and `ending_before` query parameters are mutually exclusive. Providing both will result in a 400 Bad Request response. + +**Filtering:** The `org_id` and `group_id` query parameters are mutually exclusive. Providing both will result in a 400 Bad Request response. + +#### Required permissions + +- `group.rule_extension.read` + + +### DELETE - `/groups/{group_id}/rule_extensions/assignments` - Added +- Delete assignments for rule extensions with Group or Organization scope. + +#### Required permissions + +- `group.rule_extension.edit` + + +### GET - `/groups/{group_id}/orgs` - Updated +- added the new optional `query` request parameter `expand` + +- added the optional property `meta` to the response with the `200` status + + + +### GET - `/groups/{group_id}/issues` - Updated +- the `data/items/attributes/coordinates/items/remedies/items/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- the `data/items/attributes/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new `secrets` enum value to the `data/items/attributes/type` response property for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new optional `query` request parameter `include_code_flows` + +- added the new enum value `secrets` to the `query` request parameter `type` + +- added the optional property `data/items/attributes/coordinates/items/code_flows` to the response with the `200` status + +- added the optional property `data/items/attributes/coordinates/items/code_flows_omitted` to the response with the `200` status + + + +### GET - `/groups/{group_id}/issues/{issue_id}` - Updated +- the `data/attributes/coordinates/items/remedies/items/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- the `data/attributes/description` response property`s maxLength was increased from `4096` to `20480` for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new `secrets` enum value to the `data/attributes/type` response property for the response status `200` +![Badge](https://img.shields.io/badge/Breaking-yellow) +- added the new optional `query` request parameter `include_code_flows` + +- added the non-success response with the status `501` + +- added the optional property `data/attributes/coordinates/items/code_flows` to the response with the `200` status + +- added the optional property `data/attributes/coordinates/items/code_flows_omitted` to the response with the `200` status + + + +### POST - `/groups/{group_id}/export` - Updated +- added the new optional request property `data/attributes/filters/cve` + +- added the new optional request property `data/attributes/filters/effective_severity` + +- added the new optional request property `data/attributes/filters/event` + +- added the new optional request property `data/attributes/filters/event_type` + +- added the new optional request property `data/attributes/filters/git_branch` + +- added the new optional request property `data/attributes/filters/git_repo` + +- added the new optional request property `data/attributes/filters/is_suppressed` + +- added the new optional request property `data/attributes/filters/issue_status` + +- added the new optional request property `data/attributes/filters/issue_type` + +- added the new optional request property `data/attributes/filters/nvd_severity` + +- added the new optional request property `data/attributes/filters/project_origin` + +- added the new optional request property `data/attributes/filters/project_target_display_name` + +- added the new optional request property `data/attributes/filters/project_target_ref` + +- added the new optional request property `data/attributes/filters/reachability` + +- added the new optional request property `data/attributes/filters/sdlc_stage` + +- added the new optional request property `data/attributes/filters/test_user_email` + + ## 2025-11-05 - Updated 2025-12-04 ### DELETE - `/tenants/{tenant_id}/brokers/connections/{connection_id}/orgs/{org_id}/integrations/{integration_id}` - Updated diff --git a/docs/snyk-api/reference/aibom.md b/docs/snyk-api/reference/aibom.md index c2ad2244cb8e..8bb00b8202c9 100644 --- a/docs/snyk-api/reference/aibom.md +++ b/docs/snyk-api/reference/aibom.md @@ -12,6 +12,10 @@ This document uses the REST API. For more details, see the [Authentication for A [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/ai_boms/upload" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + {% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/ai_bom_jobs/{job_id}" method="get" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} diff --git a/docs/snyk-api/reference/asset.md b/docs/snyk-api/reference/asset.md index eb8b65237cff..2dca37ab4c19 100644 --- a/docs/snyk-api/reference/asset.md +++ b/docs/snyk-api/reference/asset.md @@ -4,6 +4,18 @@ This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. {% endhint %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/assets/repository/aliases" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/assets/repository/aliases" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/assets/repository/aliases" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + {% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/assets/{asset_id}" method="patch" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} @@ -23,3 +35,15 @@ This document uses the REST API. For more details, see the [Authentication for A {% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/assets/search" method="post" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/assets/repository/aliases" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/assets/repository/aliases" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/assets/repository/aliases" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/assignments.md b/docs/snyk-api/reference/assignments.md new file mode 100644 index 000000000000..9948ea922e2e --- /dev/null +++ b/docs/snyk-api/reference/assignments.md @@ -0,0 +1,17 @@ +# Assignments + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/rule_extensions/assignments" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/rule_extensions/assignments" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/rule_extensions/assignments" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/containerregistryimportpolicy.md b/docs/snyk-api/reference/containerregistryimportpolicy.md index 5cc5ac6cd4de..ee084e7284c9 100644 --- a/docs/snyk-api/reference/containerregistryimportpolicy.md +++ b/docs/snyk-api/reference/containerregistryimportpolicy.md @@ -4,6 +4,22 @@ This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. {% endhint %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/container_import/{integration_id}/policy" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/container_import/{integration_id}/policy" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/container_import/{integration_id}/policy" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/container_import/{integration_id}/policy" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + {% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/container_import/{integration_id}/policy/dry_run" method="post" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} diff --git a/docs/snyk-api/reference/inventory-assets.md b/docs/snyk-api/reference/inventory-assets.md new file mode 100644 index 000000000000..f83c121cd9a5 --- /dev/null +++ b/docs/snyk-api/reference/inventory-assets.md @@ -0,0 +1,149 @@ +# Inventory Assets + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/{asset_id}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/{asset_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/{asset_id}/relationships/targets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/{asset_id}/relationships/projects" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/searches" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/searches/{search_id}/results" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/groups" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/groups/{group_field_id}/values" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/filters" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/inventory/assets/filters/{filter_id}/values" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/{asset_id}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/{asset_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/{asset_id}/relationships/targets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/{asset_id}/relationships/projects" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/searches" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/searches/{search_id}/results" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/groups" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/groups/{group_field_id}/values" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/filters" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/inventory/assets/filters/{filter_id}/values" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/{asset_id}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/{asset_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/{asset_id}/relationships/targets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/{asset_id}/relationships/projects" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/searches" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/searches/{search_id}/results" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/groups" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/groups/{group_field_id}/values" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/filters" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/inventory/assets/filters/{filter_id}/values" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/languagessettings.md b/docs/snyk-api/reference/languagessettings.md new file mode 100644 index 000000000000..2ec97c23e730 --- /dev/null +++ b/docs/snyk-api/reference/languagessettings.md @@ -0,0 +1,13 @@ +# LanguagesSettings + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/open_source/languages" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/open_source/languages/{language}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/learn.md b/docs/snyk-api/reference/learn.md index eb917c3377ed..69f22a0d5874 100644 --- a/docs/snyk-api/reference/learn.md +++ b/docs/snyk-api/reference/learn.md @@ -28,6 +28,10 @@ This document uses the REST API. For more details, see the [Authentication for A [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/learn/assignments/bulk_delete" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + {% openapi src="../../.gitbook/assets/rest-spec.json" path="/learn/catalog" method="get" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} diff --git a/docs/snyk-api/reference/opensourcesettings.md b/docs/snyk-api/reference/opensourcesettings.md index f969252aa122..e00b6a6238c4 100644 --- a/docs/snyk-api/reference/opensourcesettings.md +++ b/docs/snyk-api/reference/opensourcesettings.md @@ -1,9 +1,45 @@ -# OpenSourceSettings +# OpensourceSettings {% hint style="info" %} This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. {% endhint %} -{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource" method="get" %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/{ecosystem}/private-registries" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/{ecosystem}/private-registries" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/{ecosystem}/broker" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/{ecosystem}/broker" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/broker" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/broker" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/opensource/broker" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/settings/opensource/broker" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/settings/opensource/broker" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/settings/opensource/broker" method="delete" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} diff --git a/docs/snyk-api/reference/package-version.md b/docs/snyk-api/reference/package-version.md new file mode 100644 index 000000000000..8ed5df8928dc --- /dev/null +++ b/docs/snyk-api/reference/package-version.md @@ -0,0 +1,9 @@ +# Package Version + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/ecosystems/{ecosystem}/packages/{package_name}/versions/{package_version}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/fix-pull-requests.md b/docs/snyk-api/reference/package.md similarity index 76% rename from docs/snyk-api/reference/fix-pull-requests.md rename to docs/snyk-api/reference/package.md index 75e1b484d4e2..8cb16ab41157 100644 --- a/docs/snyk-api/reference/fix-pull-requests.md +++ b/docs/snyk-api/reference/package.md @@ -1,9 +1,9 @@ -# Fix Pull Requests +# Package {% hint style="info" %} This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. {% endhint %} -{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/projects/{project_id}/fix_pull_requests" method="post" %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/ecosystems/{ecosystem}/packages/{package_name}" method="get" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} diff --git a/docs/snyk-api/reference/personalaccesstoken.md b/docs/snyk-api/reference/personalaccesstoken.md new file mode 100644 index 000000000000..87067685380b --- /dev/null +++ b/docs/snyk-api/reference/personalaccesstoken.md @@ -0,0 +1,13 @@ +# PersonalAccessToken + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/self/personal_access_tokens" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/self/personal_access_tokens/{personal_access_token_id}" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/sastruleextensions.md b/docs/snyk-api/reference/sastruleextensions.md new file mode 100644 index 000000000000..9d18f04406f7 --- /dev/null +++ b/docs/snyk-api/reference/sastruleextensions.md @@ -0,0 +1,37 @@ +# SastRuleExtensions + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions/{rule_extension_id}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions/{rule_extension_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions/{rule_extension_id}" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions/tests" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions/tests/{test_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/sast/rule_extensions/tests/{test_id}/results" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/secretsruleextensions.md b/docs/snyk-api/reference/secretsruleextensions.md new file mode 100644 index 000000000000..6041675ad63b --- /dev/null +++ b/docs/snyk-api/reference/secretsruleextensions.md @@ -0,0 +1,25 @@ +# SecretsRuleExtensions + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/secrets/rule_extensions" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/secrets/rule_extensions" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/groups/{group_id}/secrets/rule_extensions/{rule_extension_id}" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/secretssettings.md b/docs/snyk-api/reference/secretssettings.md new file mode 100644 index 000000000000..33260f615d9a --- /dev/null +++ b/docs/snyk-api/reference/secretssettings.md @@ -0,0 +1,13 @@ +# SecretsSettings + +{% hint style="info" %} +This document uses the REST API. For more details, see the [Authentication for API](../authentication-for-api/) page. +{% endhint %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/secrets" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/orgs/{org_id}/settings/secrets" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} diff --git a/docs/snyk-api/reference/universal-broker.md b/docs/snyk-api/reference/universal-broker.md index aee0f625814e..24e00a4bad22 100644 --- a/docs/snyk-api/reference/universal-broker.md +++ b/docs/snyk-api/reference/universal-broker.md @@ -40,6 +40,14 @@ This document uses the REST API. For more details, see the [Authentication for A [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/contexts" method="post" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/contexts" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + {% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/deployments/{deployment_id}/connections" method="post" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} @@ -72,6 +80,30 @@ This document uses the REST API. For more details, see the [Authentication for A [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}/integrations/{integration_id}" method="delete" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/contexts/{context_id}/integration" method="patch" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + +{% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/installs/{install_id}/connections/{connection_id}/contexts" method="get" %} +[rest-spec.json](../../.gitbook/assets/rest-spec.json) +{% endopenapi %} + {% openapi src="../../.gitbook/assets/rest-spec.json" path="/tenants/{tenant_id}/brokers/deployments" method="get" %} [rest-spec.json](../../.gitbook/assets/rest-spec.json) {% endopenapi %} diff --git a/tools/api-docs-generator/sync-state.yml b/tools/api-docs-generator/sync-state.yml index 9c0bd7fc4519..ebc06988aedf 100644 --- a/tools/api-docs-generator/sync-state.yml +++ b/tools/api-docs-generator/sync-state.yml @@ -1 +1 @@ -lastSyncedVersion: "2025-11-05" +lastSyncedVersion: "2026-03-25"