Обновить профиль интеграции
/api/v1/developer/integrations/{installationId}/profileИдемпотентно заменяет mappings, conflict policy и расписание. Передайте configVersion из preparation как expectedConfigVersion; stale версия отклоняется без записи.
Право доступаintegrations.operations.write
Authorization: Bearer YOUR_PROJECT_TOKEN
Параметры
installationIdобязательно · pathstringminLength: 1 · maxLength: 160JSON Schema
{ "type": "string", "minLength": 1, "maxLength": 160 }idempotency-keyобязательно · headerstringpattern: "^[A-Za-z0-9][A-Za-z0-9._:-]{7,159}$"JSON Schema
{ "type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{7,159}$" }
Тело запроса
application/jsonobject
enabledEntityTypesобязательно- arrayminItems: 1 · maxItems: 7
Вложенная схема
arrayminItems: 1 · maxItems: 7stringenum: ["contact","organization","lead","deal","task","activity","note"]JSON Schema
{ "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }JSON Schema
{ "type": "array", "items": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "minItems": 1, "maxItems": 7 } conflictPolicyобязательно- stringenum: ["external_wins","nova_wins","newer_version_wins","manual_review"]
fieldMappingsобязательно- arraymaxItems: 100
Вложенная схема
arraymaxItems: 100objectentityTypeобязательно- stringenum: ["contact","organization","lead","deal","task","activity","note"]
externalFieldобязательно- stringminLength: 1 · maxLength: 100
novaFieldобязательно- stringminLength: 1 · maxLength: 100
enabledобязательно- boolean
exportEnabled- booleandefault: false
JSON Schema
{ "type": "object", "properties": { "entityType": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "externalField": { "type": "string", "minLength": 1, "maxLength": 100 }, "novaField": { "type": "string", "minLength": 1, "maxLength": 100 }, "enabled": { "type": "boolean" }, "exportEnabled": { "type": "boolean", "default": false } }, "required": [ "entityType", "externalField", "novaField", "enabled" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "entityType": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "externalField": { "type": "string", "minLength": 1, "maxLength": 100 }, "novaField": { "type": "string", "minLength": 1, "maxLength": 100 }, "enabled": { "type": "boolean" }, "exportEnabled": { "type": "boolean", "default": false } }, "required": [ "entityType", "externalField", "novaField", "enabled" ], "additionalProperties": false }, "maxItems": 100 } scheduleModeобязательно- stringenum: ["manual","hourly","daily"]
stageMappings- arraymaxItems: 500 · default: []
Вложенная схема
arraymaxItems: 500 · default: []objectexternalPipelineIdобязательно- stringminLength: 1 · maxLength: 200
externalStageIdобязательно- stringminLength: 1 · maxLength: 200
novaPipelineIdобязательно- stringminLength: 1 · maxLength: 200
novaStageIdобязательно- stringminLength: 1 · maxLength: 200
JSON Schema
{ "type": "object", "properties": { "externalPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "externalStageId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaStageId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalPipelineId", "externalStageId", "novaPipelineId", "novaStageId" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "externalPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "externalStageId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaStageId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalPipelineId", "externalStageId", "novaPipelineId", "novaStageId" ], "additionalProperties": false }, "maxItems": 500, "default": [] } userMappings- arraymaxItems: 250 · default: []
Вложенная схема
arraymaxItems: 250 · default: []objectexternalUserIdобязательно- stringminLength: 1 · maxLength: 200
novaIdentityIdобязательно- stringminLength: 1 · maxLength: 200
JSON Schema
{ "type": "object", "properties": { "externalUserId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaIdentityId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalUserId", "novaIdentityId" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "externalUserId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaIdentityId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalUserId", "novaIdentityId" ], "additionalProperties": false }, "maxItems": 250, "default": [] } expectedConfigVersionобязательно- integerminimum: 0
JSON Schema
{
"type": "object",
"properties": {
"enabledEntityTypes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"contact",
"organization",
"lead",
"deal",
"task",
"activity",
"note"
]
},
"minItems": 1,
"maxItems": 7
},
"conflictPolicy": {
"type": "string",
"enum": [
"external_wins",
"nova_wins",
"newer_version_wins",
"manual_review"
]
},
"fieldMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"entityType": {
"type": "string",
"enum": [
"contact",
"organization",
"lead",
"deal",
"task",
"activity",
"note"
]
},
"externalField": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"novaField": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"enabled": {
"type": "boolean"
},
"exportEnabled": {
"type": "boolean",
"default": false
}
},
"required": [
"entityType",
"externalField",
"novaField",
"enabled"
],
"additionalProperties": false
},
"maxItems": 100
},
"scheduleMode": {
"type": "string",
"enum": [
"manual",
"hourly",
"daily"
]
},
"stageMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"externalPipelineId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"externalStageId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"novaPipelineId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"novaStageId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"externalPipelineId",
"externalStageId",
"novaPipelineId",
"novaStageId"
],
"additionalProperties": false
},
"maxItems": 500,
"default": []
},
"userMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"externalUserId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"novaIdentityId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"externalUserId",
"novaIdentityId"
],
"additionalProperties": false
},
"maxItems": 250,
"default": []
},
"expectedConfigVersion": {
"type": "integer",
"minimum": 0
}
},
"required": [
"enabledEntityTypes",
"conflictPolicy",
"fieldMappings",
"scheduleMode",
"expectedConfigVersion"
],
"additionalProperties": false
}Примеры запроса
curl --request PUT 'https://YOUR_NOVA_HOST/api/v1/developer/integrations/INSTALLATION_ID/profile' --header 'Authorization: Bearer YOUR_PROJECT_TOKEN' --header 'Idempotency-Key: YOUR_UNIQUE_COMMAND_ID' --header 'Content-Type: application/json' --data '{"enabledEntityTypes":["contact"],"conflictPolicy":"external_wins","fieldMappings":[],"stageMappings":[],"userMappings":[],"scheduleMode":"manual","expectedConfigVersion":0}'Ответы
200 Updated integration profile
application/jsonobject
profileобязательно- object
Вложенная схема
objectenabledEntityTypesобязательно- arrayminItems: 1 · maxItems: 7
Вложенная схема
arrayminItems: 1 · maxItems: 7stringenum: ["contact","organization","lead","deal","task","activity","note"]JSON Schema
{ "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }JSON Schema
{ "type": "array", "items": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "minItems": 1, "maxItems": 7 } conflictPolicyобязательно- stringenum: ["external_wins","nova_wins","newer_version_wins","manual_review"]
fieldMappingsобязательно- arraymaxItems: 100
Вложенная схема
arraymaxItems: 100objectentityTypeобязательно- stringenum: ["contact","organization","lead","deal","task","activity","note"]
externalFieldобязательно- stringminLength: 1 · maxLength: 100
novaFieldобязательно- stringminLength: 1 · maxLength: 100
enabledобязательно- boolean
exportEnabled- booleandefault: false
JSON Schema
{ "type": "object", "properties": { "entityType": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "externalField": { "type": "string", "minLength": 1, "maxLength": 100 }, "novaField": { "type": "string", "minLength": 1, "maxLength": 100 }, "enabled": { "type": "boolean" }, "exportEnabled": { "type": "boolean", "default": false } }, "required": [ "entityType", "externalField", "novaField", "enabled" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "entityType": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "externalField": { "type": "string", "minLength": 1, "maxLength": 100 }, "novaField": { "type": "string", "minLength": 1, "maxLength": 100 }, "enabled": { "type": "boolean" }, "exportEnabled": { "type": "boolean", "default": false } }, "required": [ "entityType", "externalField", "novaField", "enabled" ], "additionalProperties": false }, "maxItems": 100 } stageMappingsобязательно- arraymaxItems: 500
Вложенная схема
arraymaxItems: 500objectexternalPipelineIdобязательно- stringminLength: 1 · maxLength: 200
externalStageIdобязательно- stringminLength: 1 · maxLength: 200
novaPipelineIdобязательно- stringminLength: 1 · maxLength: 200
novaStageIdобязательно- stringminLength: 1 · maxLength: 200
JSON Schema
{ "type": "object", "properties": { "externalPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "externalStageId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaStageId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalPipelineId", "externalStageId", "novaPipelineId", "novaStageId" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "externalPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "externalStageId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaStageId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalPipelineId", "externalStageId", "novaPipelineId", "novaStageId" ], "additionalProperties": false }, "maxItems": 500 } userMappingsобязательно- arraymaxItems: 250
Вложенная схема
arraymaxItems: 250objectexternalUserIdобязательно- stringminLength: 1 · maxLength: 200
novaIdentityIdобязательно- stringminLength: 1 · maxLength: 200
JSON Schema
{ "type": "object", "properties": { "externalUserId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaIdentityId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalUserId", "novaIdentityId" ], "additionalProperties": false }JSON Schema
{ "type": "array", "items": { "type": "object", "properties": { "externalUserId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaIdentityId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalUserId", "novaIdentityId" ], "additionalProperties": false }, "maxItems": 250 } configVersionобязательно- integerexclusiveMinimum: 0
scheduleModeобязательно- stringenum: ["manual","hourly","daily"]
updatedAtобязательно- stringformat: "date-time"
JSON Schema
{ "type": "object", "properties": { "enabledEntityTypes": { "type": "array", "items": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "minItems": 1, "maxItems": 7 }, "conflictPolicy": { "type": "string", "enum": [ "external_wins", "nova_wins", "newer_version_wins", "manual_review" ] }, "fieldMappings": { "type": "array", "items": { "type": "object", "properties": { "entityType": { "type": "string", "enum": [ "contact", "organization", "lead", "deal", "task", "activity", "note" ] }, "externalField": { "type": "string", "minLength": 1, "maxLength": 100 }, "novaField": { "type": "string", "minLength": 1, "maxLength": 100 }, "enabled": { "type": "boolean" }, "exportEnabled": { "type": "boolean", "default": false } }, "required": [ "entityType", "externalField", "novaField", "enabled" ], "additionalProperties": false }, "maxItems": 100 }, "stageMappings": { "type": "array", "items": { "type": "object", "properties": { "externalPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "externalStageId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaPipelineId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaStageId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalPipelineId", "externalStageId", "novaPipelineId", "novaStageId" ], "additionalProperties": false }, "maxItems": 500 }, "userMappings": { "type": "array", "items": { "type": "object", "properties": { "externalUserId": { "type": "string", "minLength": 1, "maxLength": 200 }, "novaIdentityId": { "type": "string", "minLength": 1, "maxLength": 200 } }, "required": [ "externalUserId", "novaIdentityId" ], "additionalProperties": false }, "maxItems": 250 }, "configVersion": { "type": "integer", "exclusiveMinimum": 0 }, "scheduleMode": { "type": "string", "enum": [ "manual", "hourly", "daily" ] }, "updatedAt": { "type": "string", "format": "date-time" } }, "required": [ "enabledEntityTypes", "conflictPolicy", "fieldMappings", "stageMappings", "userMappings", "configVersion", "scheduleMode", "updatedAt" ], "additionalProperties": false } replayedобязательно- boolean
JSON Schema
{
"type": "object",
"properties": {
"profile": {
"type": "object",
"properties": {
"enabledEntityTypes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"contact",
"organization",
"lead",
"deal",
"task",
"activity",
"note"
]
},
"minItems": 1,
"maxItems": 7
},
"conflictPolicy": {
"type": "string",
"enum": [
"external_wins",
"nova_wins",
"newer_version_wins",
"manual_review"
]
},
"fieldMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"entityType": {
"type": "string",
"enum": [
"contact",
"organization",
"lead",
"deal",
"task",
"activity",
"note"
]
},
"externalField": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"novaField": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"enabled": {
"type": "boolean"
},
"exportEnabled": {
"type": "boolean",
"default": false
}
},
"required": [
"entityType",
"externalField",
"novaField",
"enabled"
],
"additionalProperties": false
},
"maxItems": 100
},
"stageMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"externalPipelineId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"externalStageId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"novaPipelineId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"novaStageId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"externalPipelineId",
"externalStageId",
"novaPipelineId",
"novaStageId"
],
"additionalProperties": false
},
"maxItems": 500
},
"userMappings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"externalUserId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"novaIdentityId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"externalUserId",
"novaIdentityId"
],
"additionalProperties": false
},
"maxItems": 250
},
"configVersion": {
"type": "integer",
"exclusiveMinimum": 0
},
"scheduleMode": {
"type": "string",
"enum": [
"manual",
"hourly",
"daily"
]
},
"updatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"enabledEntityTypes",
"conflictPolicy",
"fieldMappings",
"stageMappings",
"userMappings",
"configVersion",
"scheduleMode",
"updatedAt"
],
"additionalProperties": false
},
"replayed": {
"type": "boolean"
}
},
"required": [
"profile",
"replayed"
],
"additionalProperties": false,
"$ref": "#/components/schemas/DeveloperIntegrationProfileUpdateResponse"
}400 Invalid integration preparation request
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titleобязательно- string
statusобязательно- 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"
titleобязательно- string
statusобязательно- 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 preparation access unavailable
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titleобязательно- string
statusобязательно- 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"
]
}404 Integration installation not found
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titleобязательно- string
statusобязательно- 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"
]
}409 Idempotency, profile version or integration state conflict
application/problem+jsonobject
type- stringformat: "uri" · default: "about:blank"
titleобязательно- string
statusобязательно- 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"
titleобязательно- string
statusобязательно- 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"
titleобязательно- string
statusобязательно- 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"
]
}