Get Developer Integration Catalog
/api/v1/developer/integrations/catalogUse the access scope below. The generated schemas specify the exact request and responses.
Access scopeintegrations.installations.read
Authorization: Bearer YOUR_PROJECT_TOKEN
Request examples
curl --request GET 'https://YOUR_NOVA_HOST/api/v1/developer/integrations/catalog' --header 'Authorization: Bearer YOUR_PROJECT_TOKEN'
Responses
200 Project Integration catalog
application/jsonobject
definitionsrequired- arraymaxItems: 100
Nested schema
arraymaxItems: 100objectcoderequired- stringpattern: "^[a-z][a-z0-9_]{1,63}$"
versionrequired- integerexclusiveMinimum: 0
categoryrequired- stringenum: ["crm","booking","commerce","calendar","automation"]
availabilityrequired- stringenum: ["available","beta","private_preview","coming_soon"]
cardinalityrequired- stringenum: ["single","multiple"]
authModesrequired- arrayminItems: 1 · maxItems: 3
Nested schema
arrayminItems: 1 · maxItems: 3stringenum: ["oauth2","api_key","basic_auth","signed_secret"]JSON Schema
{ "type": "string", "enum": [ "oauth2", "api_key", "basic_auth", "signed_secret" ] }JSON Schema
{ "type": "array", "items": { "type": "string", "enum": [ "oauth2", "api_key", "basic_auth", "signed_secret" ] }, "minItems": 1, "maxItems": 3 } capabilitiesrequired- arrayminItems: 1 · maxItems: 7
Nested schema
arrayminItems: 1 · maxItems: 7stringenum: ["initial_import","continuous_import","explicit_export","bidirectional_sync","health_check","reconcile","uninstall_cleanup"]JSON Schema
{ "type": "string", "enum": [ "initial_import", "continuous_import", "explicit_export", "bidirectional_sync", "health_check", "reconcile", "uninstall_cleanup" ] }JSON Schema
{ "type": "array", "items": { "type": "string", "enum": [ "initial_import", "continuous_import", "explicit_export", "bidirectional_sync", "health_check", "reconcile", "uninstall_cleanup" ] }, "minItems": 1, "maxItems": 7 } setupSchemaVersionrequired- integerexclusiveMinimum: 0
titlerequired- object
Nested schema
objectrurequired- stringminLength: 1 · maxLength: 500
enrequired- stringminLength: 1 · maxLength: 500
JSON Schema
{ "type": "object", "properties": { "ru": { "type": "string", "minLength": 1, "maxLength": 500 }, "en": { "type": "string", "minLength": 1, "maxLength": 500 } }, "required": [ "ru", "en" ], "additionalProperties": false } descriptionrequired- object
Nested schema
objectrurequired- stringminLength: 1 · maxLength: 500
enrequired- stringminLength: 1 · maxLength: 500
JSON Schema
{ "type": "object", "properties": { "ru": { "type": "string", "minLength": 1, "maxLength": 500 }, "en": { "type": "string", "minLength": 1, "maxLength": 500 } }, "required": [ "ru", "en" ], "additionalProperties": false } dataAccessrequired- arrayminItems: 1 · maxItems: 20
Nested schema
arrayminItems: 1 · maxItems: 20objectJSON Schema
{ "type": "object", "properties": { "object": { "type": "string", "enum": [ "contacts", "organizations", "leads", "deals", "tasks", "activities", "notes", "bookings", "orders", "catalog", "events", "documents" ] }, "direction": { "type": "string", "enum": [ "into_nova", "out_of_nova", "bidirectional" ] }, "providerAccess": { "type": "array", "items": { "type": "string", "enum": [ "read", "write" ] }, "minItems": 1, "maxItems": 2 } }, "required": [ "object", "direction", "providerAccess" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "object": { "type": "string", "enum": [ "contacts", "organizations", "leads", "deals", "tasks", "activities", "notes", "bookings", "orders", "catalog", "events", "documents" ] }, "direction": { "type": "string", "enum": [ "into_nova", "out_of_nova", "bidirectional" ] }, "providerAccess": { "type": "array", "items": { "type": "string", "enum": [ "read", "write" ] }, "minItems": 1, "maxItems": 2 } }, "required": [ "object", "direction", "providerAccess" ], "additionalProperties": false }, "minItems": 1, "maxItems": 20 } prerequisitesrequired- object
Nested schema
objectrurequired- arrayminItems: 1 · maxItems: 20
Nested schema
arrayminItems: 1 · maxItems: 20JSON Schema
{ "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } enrequired- arrayminItems: 1 · maxItems: 20
Nested schema
arrayminItems: 1 · maxItems: 20JSON Schema
{ "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }
JSON Schema
{ "type": "object", "properties": { "ru": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }, "en": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } }, "required": [ "ru", "en" ], "additionalProperties": false } providerNotesrequired- object
Nested schema
objectrurequired- arrayminItems: 1 · maxItems: 20
Nested schema
arrayminItems: 1 · maxItems: 20JSON Schema
{ "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } enrequired- arrayminItems: 1 · maxItems: 20
Nested schema
arrayminItems: 1 · maxItems: 20JSON Schema
{ "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }
JSON Schema
{ "type": "object", "properties": { "ru": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }, "en": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } }, "required": [ "ru", "en" ], "additionalProperties": false } installationCountrequired- integerminimum: 0
selfServeInstallablerequired- boolean
oauthReadyrequired- boolean
offerrequired- object
Nested schema
objectkindrequired- stringenum: ["free","monthly","usage_based","included","contact_sales","unavailable"]
versionrequired- integer | nullexclusiveMinimum: 0
amountCentsrequired- integer | nullminimum: 0
currencyrequired- union
Nested schema
unionJSON Schema
{ "anyOf": [ { "type": "string", "enum": [ "RUB" ] }, { "type": "null" } ] }
JSON Schema
{ "type": "object", "properties": { "kind": { "type": "string", "enum": [ "free", "monthly", "usage_based", "included", "contact_sales", "unavailable" ] }, "version": { "type": [ "integer", "null" ], "exclusiveMinimum": 0 }, "amountCents": { "type": [ "integer", "null" ], "minimum": 0 }, "currency": { "anyOf": [ { "type": "string", "enum": [ "RUB" ] }, { "type": "null" } ] } }, "required": [ "kind", "version", "amountCents", "currency" ], "additionalProperties": false }
JSON Schema
{ "type": "object", "properties": { "code": { "type": "string", "pattern": "^[a-z][a-z0-9_]{1,63}$" }, "version": { "type": "integer", "exclusiveMinimum": 0 }, "category": { "type": "string", "enum": [ "crm", "booking", "commerce", "calendar", "automation" ] }, "availability": { "type": "string", "enum": [ "available", "beta", "private_preview", "coming_soon" ] }, "cardinality": { "type": "string", "enum": [ "single", "multiple" ] }, "authModes": { "type": "array", "items": { "type": "string", "enum": [ "oauth2", "api_key", "basic_auth", "signed_secret" ] }, "minItems": 1, "maxItems": 3 }, "capabilities": { "type": "array", "items": { "type": "string", "enum": [ "initial_import", "continuous_import", "explicit_export", "bidirectional_sync", "health_check", "reconcile", "uninstall_cleanup" ] }, "minItems": 1, "maxItems": 7 }, "setupSchemaVersion": { "type": "integer", "exclusiveMinimum": 0 }, "title": { "type": "object", "properties": { "ru": { "type": "string", "minLength": 1, "maxLength": 500 }, "en": { "type": "string", "minLength": 1, "maxLength": 500 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "description": { "type": "object", "properties": { "ru": { "type": "string", "minLength": 1, "maxLength": 500 }, "en": { "type": "string", "minLength": 1, "maxLength": 500 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "dataAccess": { "type": "array", "items": { "type": "object", "properties": { "object": { "type": "string", "enum": [ "contacts", "organizations", "leads", "deals", "tasks", "activities", "notes", "bookings", "orders", "catalog", "events", "documents" ] }, "direction": { "type": "string", "enum": [ "into_nova", "out_of_nova", "bidirectional" ] }, "providerAccess": { "type": "array", "items": { "type": "string", "enum": [ "read", "write" ] }, "minItems": 1, "maxItems": 2 } }, "required": [ "object", "direction", "providerAccess" ], "additionalProperties": false }, "minItems": 1, "maxItems": 20 }, "prerequisites": { "type": "object", "properties": { "ru": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }, "en": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "providerNotes": { "type": "object", "properties": { "ru": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }, "en": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "installationCount": { "type": "integer", "minimum": 0 }, "selfServeInstallable": { "type": "boolean" }, "oauthReady": { "type": "boolean" }, "offer": { "type": "object", "properties": { "kind": { "type": "string", "enum": [ "free", "monthly", "usage_based", "included", "contact_sales", "unavailable" ] }, "version": { "type": [ "integer", "null" ], "exclusiveMinimum": 0 }, "amountCents": { "type": [ "integer", "null" ], "minimum": 0 }, "currency": { "anyOf": [ { "type": "string", "enum": [ "RUB" ] }, { "type": "null" } ] } }, "required": [ "kind", "version", "amountCents", "currency" ], "additionalProperties": false } }, "required": [ "code", "version", "category", "availability", "cardinality", "authModes", "capabilities", "setupSchemaVersion", "title", "description", "dataAccess", "prerequisites", "providerNotes", "installationCount", "selfServeInstallable", "oauthReady", "offer" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string", "pattern": "^[a-z][a-z0-9_]{1,63}$" }, "version": { "type": "integer", "exclusiveMinimum": 0 }, "category": { "type": "string", "enum": [ "crm", "booking", "commerce", "calendar", "automation" ] }, "availability": { "type": "string", "enum": [ "available", "beta", "private_preview", "coming_soon" ] }, "cardinality": { "type": "string", "enum": [ "single", "multiple" ] }, "authModes": { "type": "array", "items": { "type": "string", "enum": [ "oauth2", "api_key", "basic_auth", "signed_secret" ] }, "minItems": 1, "maxItems": 3 }, "capabilities": { "type": "array", "items": { "type": "string", "enum": [ "initial_import", "continuous_import", "explicit_export", "bidirectional_sync", "health_check", "reconcile", "uninstall_cleanup" ] }, "minItems": 1, "maxItems": 7 }, "setupSchemaVersion": { "type": "integer", "exclusiveMinimum": 0 }, "title": { "type": "object", "properties": { "ru": { "type": "string", "minLength": 1, "maxLength": 500 }, "en": { "type": "string", "minLength": 1, "maxLength": 500 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "description": { "type": "object", "properties": { "ru": { "type": "string", "minLength": 1, "maxLength": 500 }, "en": { "type": "string", "minLength": 1, "maxLength": 500 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "dataAccess": { "type": "array", "items": { "type": "object", "properties": { "object": { "type": "string", "enum": [ "contacts", "organizations", "leads", "deals", "tasks", "activities", "notes", "bookings", "orders", "catalog", "events", "documents" ] }, "direction": { "type": "string", "enum": [ "into_nova", "out_of_nova", "bidirectional" ] }, "providerAccess": { "type": "array", "items": { "type": "string", "enum": [ "read", "write" ] }, "minItems": 1, "maxItems": 2 } }, "required": [ "object", "direction", "providerAccess" ], "additionalProperties": false }, "minItems": 1, "maxItems": 20 }, "prerequisites": { "type": "object", "properties": { "ru": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }, "en": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "providerNotes": { "type": "object", "properties": { "ru": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 }, "en": { "type": "array", "items": { "type": "string", "minLength": 1, "maxLength": 500 }, "minItems": 1, "maxItems": 20 } }, "required": [ "ru", "en" ], "additionalProperties": false }, "installationCount": { "type": "integer", "minimum": 0 }, "selfServeInstallable": { "type": "boolean" }, "oauthReady": { "type": "boolean" }, "offer": { "type": "object", "properties": { "kind": { "type": "string", "enum": [ "free", "monthly", "usage_based", "included", "contact_sales", "unavailable" ] }, "version": { "type": [ "integer", "null" ], "exclusiveMinimum": 0 }, "amountCents": { "type": [ "integer", "null" ], "minimum": 0 }, "currency": { "anyOf": [ { "type": "string", "enum": [ "RUB" ] }, { "type": "null" } ] } }, "required": [ "kind", "version", "amountCents", "currency" ], "additionalProperties": false } }, "required": [ "code", "version", "category", "availability", "cardinality", "authModes", "capabilities", "setupSchemaVersion", "title", "description", "dataAccess", "prerequisites", "providerNotes", "installationCount", "selfServeInstallable", "oauthReady", "offer" ], "additionalProperties": false }, "maxItems": 100 }
JSON Schema
{
"type": "object",
"properties": {
"definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{1,63}$"
},
"version": {
"type": "integer",
"exclusiveMinimum": 0
},
"category": {
"type": "string",
"enum": [
"crm",
"booking",
"commerce",
"calendar",
"automation"
]
},
"availability": {
"type": "string",
"enum": [
"available",
"beta",
"private_preview",
"coming_soon"
]
},
"cardinality": {
"type": "string",
"enum": [
"single",
"multiple"
]
},
"authModes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"oauth2",
"api_key",
"basic_auth",
"signed_secret"
]
},
"minItems": 1,
"maxItems": 3
},
"capabilities": {
"type": "array",
"items": {
"type": "string",
"enum": [
"initial_import",
"continuous_import",
"explicit_export",
"bidirectional_sync",
"health_check",
"reconcile",
"uninstall_cleanup"
]
},
"minItems": 1,
"maxItems": 7
},
"setupSchemaVersion": {
"type": "integer",
"exclusiveMinimum": 0
},
"title": {
"type": "object",
"properties": {
"ru": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"en": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"ru",
"en"
],
"additionalProperties": false
},
"description": {
"type": "object",
"properties": {
"ru": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"en": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"ru",
"en"
],
"additionalProperties": false
},
"dataAccess": {
"type": "array",
"items": {
"type": "object",
"properties": {
"object": {
"type": "string",
"enum": [
"contacts",
"organizations",
"leads",
"deals",
"tasks",
"activities",
"notes",
"bookings",
"orders",
"catalog",
"events",
"documents"
]
},
"direction": {
"type": "string",
"enum": [
"into_nova",
"out_of_nova",
"bidirectional"
]
},
"providerAccess": {
"type": "array",
"items": {
"type": "string",
"enum": [
"read",
"write"
]
},
"minItems": 1,
"maxItems": 2
}
},
"required": [
"object",
"direction",
"providerAccess"
],
"additionalProperties": false
},
"minItems": 1,
"maxItems": 20
},
"prerequisites": {
"type": "object",
"properties": {
"ru": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"minItems": 1,
"maxItems": 20
},
"en": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"minItems": 1,
"maxItems": 20
}
},
"required": [
"ru",
"en"
],
"additionalProperties": false
},
"providerNotes": {
"type": "object",
"properties": {
"ru": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"minItems": 1,
"maxItems": 20
},
"en": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"minItems": 1,
"maxItems": 20
}
},
"required": [
"ru",
"en"
],
"additionalProperties": false
},
"installationCount": {
"type": "integer",
"minimum": 0
},
"selfServeInstallable": {
"type": "boolean"
},
"oauthReady": {
"type": "boolean"
},
"offer": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"free",
"monthly",
"usage_based",
"included",
"contact_sales",
"unavailable"
]
},
"version": {
"type": [
"integer",
"null"
],
"exclusiveMinimum": 0
},
"amountCents": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"currency": {
"anyOf": [
{
"type": "string",
"enum": [
"RUB"
]
},
{
"type": "null"
}
]
}
},
"required": [
"kind",
"version",
"amountCents",
"currency"
],
"additionalProperties": false
}
},
"required": [
"code",
"version",
"category",
"availability",
"cardinality",
"authModes",
"capabilities",
"setupSchemaVersion",
"title",
"description",
"dataAccess",
"prerequisites",
"providerNotes",
"installationCount",
"selfServeInstallable",
"oauthReady",
"offer"
],
"additionalProperties": false
},
"maxItems": 100
}
},
"required": [
"definitions"
],
"additionalProperties": false,
"$ref": "#/components/schemas/DeveloperIntegrationCatalogResponse"
}400 Invalid installation discovery request
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titlerequired- string
statusrequired- integerminimum: 100 · maximum: 599
detail- string
instance- string
errors- object
JSON Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"format": "uri",
"default": "about:blank"
},
"title": {
"type": "string"
},
"status": {
"type": "integer",
"minimum": 100,
"maximum": 599
},
"detail": {
"type": "string"
},
"instance": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {}
}
},
"required": [
"title",
"status"
]
}401 Invalid developer credential
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titlerequired- string
statusrequired- integerminimum: 100 · maximum: 599
detail- string
instance- string
errors- object
JSON Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"format": "uri",
"default": "about:blank"
},
"title": {
"type": "string"
},
"status": {
"type": "integer",
"minimum": 100,
"maximum": 599
},
"detail": {
"type": "string"
},
"instance": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {}
}
},
"required": [
"title",
"status"
]
}403 Integration discovery access unavailable
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titlerequired- string
statusrequired- integerminimum: 100 · maximum: 599
detail- string
instance- string
errors- object
JSON Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"format": "uri",
"default": "about:blank"
},
"title": {
"type": "string"
},
"status": {
"type": "integer",
"minimum": 100,
"maximum": 599
},
"detail": {
"type": "string"
},
"instance": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {}
}
},
"required": [
"title",
"status"
]
}429 Developer API rate limit exceeded
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titlerequired- string
statusrequired- integerminimum: 100 · maximum: 599
detail- string
instance- string
errors- object
JSON Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"format": "uri",
"default": "about:blank"
},
"title": {
"type": "string"
},
"status": {
"type": "integer",
"minimum": 100,
"maximum": 599
},
"detail": {
"type": "string"
},
"instance": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {}
}
},
"required": [
"title",
"status"
]
}503 Developer API rate limiter unavailable
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titlerequired- string
statusrequired- integerminimum: 100 · maximum: 599
detail- string
instance- string
errors- object
JSON Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"format": "uri",
"default": "about:blank"
},
"title": {
"type": "string"
},
"status": {
"type": "integer",
"minimum": 100,
"maximum": 599
},
"detail": {
"type": "string"
},
"instance": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {}
}
},
"required": [
"title",
"status"
]
}