Search documentation
karat

+

K

User Documentation ↗
Version 3.0Beta

Discover Inputs Marketplace Installation Jobs

POST/api/v3/platform/marketplaceInstallationJobs/discoverInputs
Warning

This endpoint is in preview and may be modified or removed at any time. To use this endpoint, add preview=true to the request query parameters.

Discover required and optional inputs for existing installations and their proposed target versions.

Resolves input requirements and available sources using the requested target versions, location overrides, and recommendation strategies.

The request token must have permission to edit each target. Every input in the target product versions must have an API name.

Third-party applications using this endpoint via OAuth2 must request the following operation scope: api:v3:marketplace-installation-job:read:discover-inputs.

Query parameters

preview
booleanoptional

Enables the use of preview functionality.

Request body

DiscoverInstallationJobInputsRequest
object
Hide child attributes

Hide child attributes

installations
list<InstallationTarget>optional

Between 1 and 10 distinct installations, with at most one installation per product. Targets must share a namespace and marketplace and have at most one resulting ontology after applying overrides.

Show child attributes

Show child attributes

recommendations
list<RecommendationStrategy>optional

An empty list disables recommendations from installations outside the requested targets. Targets in this request may still supply inputs to one another.

Show child attributes

Show child attributes

sourceFilter
objectoptional

When supplied, excludes an input if any of its available sources appears in excludedSources. If omitted, returns only inputs whose sole available source is MANUAL. Inputs with no available source are always omitted.

Show child attributes

Show child attributes

Response body

DiscoverInstallationJobInputsResponse
object
Hide child attributes

Hide child attributes

errors
list<InstallationError>optional

Errors encountered during input resolution. Errors for inputs excluded by sourceFilter are omitted.

Show child attributes

Show child attributes

inputs
map<MarketplaceInstallationRid, DiscoveredInstallationInputs>optional

All matching input requirements for each requested installation after source filtering, without pagination. An installation's input map is empty if no inputs match.

Show child attributes

Show child attributes

Examples

Request

Copied!
1 2 3 4 5 curl -X POST \ \t-H "Content-type: application/json" \ \t-H "Authorization: Bearer $TOKEN" \ "https://$HOSTNAME/api/v3/platform/marketplaceInstallationJobs/discoverInputs?preview=true" \ -d '{"installations":[{"installationRid":"ri.marketplace.main.block-set-installation.5b2d8f31-6c42-4a7e-9a13-8e0a3e6d9c52","targetVersion":{"type":"latest"},"overrides":{"ontology":{"ontologyRid":"ri.ontology.main.ontology.c1e96527-1a20-4c7b-b17a-b3c7cfc8f024","type":"set"}}}],"recommendations":[{"suffixFilter":"shared","type":"sameNamespace"}],"sourceFilter":{"excludedSources":["AUTO_MAPPED"]}}'

Response

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 { "inputs": { "ri.marketplace.main.block-set-installation.5b2d8f31-6c42-4a7e-9a13-8e0a3e6d9c52": { "inputs": { "myDataset.address": { "inputId": "0c47d2a9-83e1-4f6b-9d50-2a8b74e3c619", "inputType": "DATA_SOURCE_COLUMN", "optional": false, "sources": [ "MANUAL" ], "supportedTypes": [ { "valueType": "STRING", "type": "simple" } ] } } } }, "errors": [ { "severity": "BLOCKING", "target": { "type": "job" }, "errorValue": { "errorCode": "INVALID_ARGUMENT", "errorName": "Marketplace:IncompatibleDefaultBuildOptions", "parameters": { "errorType": { "kind": "installJob" } }, "type": "other" } } ] }

Error responses

Error Name
InstallationUninstallStartedError CodeCONFLICT
Status Code409
DescriptionUninstall has begun for the target installation. Create a new installation to install the product again.
ParametersinstallationRid
AmbiguousInstallationRecommendationError CodeINVALID_ARGUMENT
Status Code400
DescriptionA namespace recommendation strategy matches multiple installations of the same linked product. Narrow its suffix filter or use explicit recommendations. Overlapping recommendation inputs or sources are reported separately as `InstallationError` entries in the discovery response.
ParametersproductId, installationRids
ConflictingInstallationRecommendationError CodeINVALID_ARGUMENT
Status Code400
DescriptionA recommendation supplies a product that is also included in the requested targets. Remove that recommendation.
ParametersrecommendationInstallationRid, requestedInstallationRid
DiscoverInstallationJobInputsPermissionDeniedError CodePERMISSION_DENIED
Status Code403
DescriptionThe request token does not have permission to edit one or more target installations and cannot discover their inputs.
ParametersinstallationRids
DuplicateInstallationJobInstallationsError CodeINVALID_ARGUMENT
Status Code400
DescriptionAn installation occurs more than once in the target list.
ParametersinstallationRids
InstallationTargetVersionNotFoundError CodeNOT_FOUND
Status Code404
DescriptionThe requested target version could not be found within the installation product and marketplace.
ParametersinstallationRid, targetVersion
InstallationInputApiNamesNotEnabledError CodeINVALID_ARGUMENT
Status Code400
DescriptionOne or more installations have product inputs without API names. Enable input API name generation for those products before interacting with them.
ParametersinstallationRids
MarketplaceInstallationNotFoundError CodeNOT_FOUND
Status Code404
Description
ParametersmarketplaceInstallationRid
InstallationJobMarketplaceConstraintViolatedError CodeINVALID_ARGUMENT
Status Code400
DescriptionThe target products must belong to a single marketplace.
ParametersinstallationRids
MissingInstallationJobInstallationsError CodeINVALID_ARGUMENT
Status Code400
DescriptionAt least one installation target must be supplied.
Parameters
InstallationJobNamespaceConstraintViolatedError CodeINVALID_ARGUMENT
Status Code400
DescriptionThe target installations must belong to a single namespace.
ParametersinstallationRids
InstallationDraftAlreadyExistsError CodeCONFLICT
Status Code409
DescriptionThe caller already has a preparing or idle draft for a target installation. Complete or abort the existing draft before preparing another job or discovering inputs for that installation.
ParametersinstallationRid, existingInstallationJobRid
DuplicateInstallationJobProductsError CodeINVALID_ARGUMENT
Status Code400
DescriptionMore than one target installation uses the same product.
ParametersproductId, installationRids
MaxInstallationJobInstallationsCountExceededError CodeINVALID_ARGUMENT
Status Code400
DescriptionThe number of installation targets exceeds the maximum supported by this operation.
ParametersinstallationsCount, maxInstallationsCount
InstallationJobOntologyConstraintViolatedError CodeINVALID_ARGUMENT
Status Code400
DescriptionThe target installations must have at most one resulting ontology after applying location overrides.
ParametersinstallationRids
DiscoverInstallationJobInputsFailedError CodeINTERNAL
Status Code500
DescriptionMarketplace could not complete input discovery.
ParameterserrorName, errorCode
InvalidInstallationTargetVersionError CodeINVALID_ARGUMENT
Status Code400
DescriptionThe target semantic version must be an exact major.minor.patch version with non-negative integer components and no leading zeros. Each component must be at most 2⁵³ - 2 (9,007,199,254,740,990). Version ranges, wildcards, prerelease identifiers, and build metadata are not supported.
Parametersversion