{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/snyk/main/json-schema/snyk-app-install-data-with-secret-schema.json", "title": "AppInstallDataWithSecret", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/snyk-apps-api-openapi.yml#/components/schemas/AppInstallDataWithSecret", "additionalProperties": false, "properties": { "attributes": { "properties": { "client_id": { "$ref": "#/$defs/ClientId" }, "client_secret": { "$ref": "#/$defs/ClientSecret20240523" }, "installed_at": { "$ref": "#/$defs/InstalledAt" } }, "required": [ "client_id", "client_secret" ], "type": "object" }, "id": { "$ref": "#/$defs/Uuid" }, "links": { "$ref": "#/$defs/Links" }, "relationships": { "properties": { "app": { "properties": { "data": { "$ref": "#/$defs/PublicAppData" } }, "type": "object" } }, "type": "object" }, "type": { "$ref": "#/$defs/Type" } }, "required": [ "type", "id", "attributes" ], "type": "object", "$defs": { "AppName": { "description": "New name of the app to display to users during authorization flow.", "minLength": 1, "type": "string" }, "ClientId": { "description": "The OAuth2 client id for the app installation. Only provided for installations of non-interactive Snyk Apps.", "format": "uuid", "type": "string" }, "ClientSecret20240523": { "description": "The OAuth2 client secret for the app. This is the only time this secret will be returned, store it securely and don’t lose it. Only provided for installations of non-interactive Snyk Apps.", "minLength": 1, "type": "string" }, "Context": { "description": "Allow installing the app to a org/group or to a user, default tenant.", "enum": [ "tenant", "user" ], "type": "string" }, "InstalledAt": { "description": "Timestamp at which this app was first installed at.", "format": "date-time", "type": "string" }, "LinkProperty": { "oneOf": [ { "description": "A string containing the link’s URL.", "type": "string" }, { "additionalProperties": false, "properties": { "href": { "description": "A string containing the link’s URL.", "type": "string" }, "meta": { "additionalProperties": true, "description": "Free-form object that may contain non-standard information.", "type": "object" } }, "required": [ "href" ], "type": "object" } ] }, "Links": { "additionalProperties": false, "properties": { "first": { "$ref": "#/$defs/LinkProperty" }, "last": { "$ref": "#/$defs/LinkProperty" }, "next": { "$ref": "#/$defs/LinkProperty" }, "prev": { "$ref": "#/$defs/LinkProperty" }, "related": { "$ref": "#/$defs/LinkProperty" }, "self": { "$ref": "#/$defs/LinkProperty" } }, "type": "object" }, "PublicAppAttributes": { "additionalProperties": false, "properties": { "client_id": { "$ref": "#/$defs/Uuid" }, "context": { "$ref": "#/$defs/Context" }, "name": { "$ref": "#/$defs/AppName" }, "scopes": { "$ref": "#/$defs/Scopes" } }, "required": [ "name", "client_id" ], "type": "object" }, "PublicAppData": { "additionalProperties": false, "properties": { "attributes": { "$ref": "#/$defs/PublicAppAttributes" }, "id": { "$ref": "#/$defs/Uuid" }, "links": { "$ref": "#/$defs/Links" }, "type": { "$ref": "#/$defs/Type" } }, "required": [ "type", "id" ], "type": "object" }, "Scopes": { "description": "The scopes this app is allowed to request during authorization.", "items": { "minLength": 1, "type": "string" }, "minItems": 1, "type": "array" }, "Type": { "type": "string" }, "Uuid": { "format": "uuid", "type": "string" } } }