Методы API
DEVELOPER PLATFORM · v1

API, с которым удобно работать

CRM, кампании, аналитика и интеграции. Точные контракты, понятные примеры и подписанные вебхуки.

Скачать OpenAPI

Private preview: API доступен с проектным ключом. Публичные SLA и сроки поддержки ещё не установлены.

GET

История запусков интеграции

/api/v1/developer/integrations/{installationId}/runs

Возвращает newest-first страницу минимизированных запусков. Продолжайте только по непрозрачному nextCursor.

Право доступаintegrations.operations.read

Authorization: Bearer YOUR_PROJECT_TOKEN

Параметры

installationIdобязательно · path

stringminLength: 1 · maxLength: 160

JSON Schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 160
}
limitнеобязательно · query

integerminimum: 1 · maximum: 100

JSON Schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 100
}
cursorнеобязательно · query

stringminLength: 1 · maxLength: 2048

JSON Schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 2048
}

Примеры запроса

curl --request GET   'https://YOUR_NOVA_HOST/api/v1/developer/integrations/INSTALLATION_ID/runs?limit=50'   --header 'Authorization: Bearer YOUR_PROJECT_TOKEN'

Ответы

200 Integration run page
application/json

object

runsобязательно
arraymaxItems: 100
Вложенная схема

arraymaxItems: 100

object

idобязательно
stringminLength: 1 · maxLength: 160
typeобязательно
stringenum: ["initial_import","incremental_import","reconcile"]
statusобязательно
stringenum: ["queued","running","retry_pending","completed","failed","cancelled"]
processedCountобязательно
integerminimum: 0
createdCountобязательно
integerminimum: 0
updatedCountобязательно
integerminimum: 0
skippedCountобязательно
integerminimum: 0
failedCountобязательно
integerminimum: 0
attemptsобязательно
integerminimum: 0
maxAttemptsобязательно
integerexclusiveMinimum: 0
retryAtобязательно
string | nullformat: "date-time"
lastErrorCategoryобязательно
string | nullmaxLength: 120
createdAtобязательно
stringformat: "date-time"
startedAtобязательно
string | nullformat: "date-time"
completedAtобязательно
string | nullformat: "date-time"
updatedAtобязательно
stringformat: "date-time"
JSON Schema
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "type": {
      "type": "string",
      "enum": [
        "initial_import",
        "incremental_import",
        "reconcile"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "queued",
        "running",
        "retry_pending",
        "completed",
        "failed",
        "cancelled"
      ]
    },
    "processedCount": {
      "type": "integer",
      "minimum": 0
    },
    "createdCount": {
      "type": "integer",
      "minimum": 0
    },
    "updatedCount": {
      "type": "integer",
      "minimum": 0
    },
    "skippedCount": {
      "type": "integer",
      "minimum": 0
    },
    "failedCount": {
      "type": "integer",
      "minimum": 0
    },
    "attempts": {
      "type": "integer",
      "minimum": 0
    },
    "maxAttempts": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "retryAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "lastErrorCategory": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 120
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "startedAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "completedAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time"
    }
  },
  "required": [
    "id",
    "type",
    "status",
    "processedCount",
    "createdCount",
    "updatedCount",
    "skippedCount",
    "failedCount",
    "attempts",
    "maxAttempts",
    "retryAt",
    "lastErrorCategory",
    "createdAt",
    "startedAt",
    "completedAt",
    "updatedAt"
  ],
  "additionalProperties": false
}
JSON Schema
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "minLength": 1,
        "maxLength": 160
      },
      "type": {
        "type": "string",
        "enum": [
          "initial_import",
          "incremental_import",
          "reconcile"
        ]
      },
      "status": {
        "type": "string",
        "enum": [
          "queued",
          "running",
          "retry_pending",
          "completed",
          "failed",
          "cancelled"
        ]
      },
      "processedCount": {
        "type": "integer",
        "minimum": 0
      },
      "createdCount": {
        "type": "integer",
        "minimum": 0
      },
      "updatedCount": {
        "type": "integer",
        "minimum": 0
      },
      "skippedCount": {
        "type": "integer",
        "minimum": 0
      },
      "failedCount": {
        "type": "integer",
        "minimum": 0
      },
      "attempts": {
        "type": "integer",
        "minimum": 0
      },
      "maxAttempts": {
        "type": "integer",
        "exclusiveMinimum": 0
      },
      "retryAt": {
        "type": [
          "string",
          "null"
        ],
        "format": "date-time"
      },
      "lastErrorCategory": {
        "type": [
          "string",
          "null"
        ],
        "maxLength": 120
      },
      "createdAt": {
        "type": "string",
        "format": "date-time"
      },
      "startedAt": {
        "type": [
          "string",
          "null"
        ],
        "format": "date-time"
      },
      "completedAt": {
        "type": [
          "string",
          "null"
        ],
        "format": "date-time"
      },
      "updatedAt": {
        "type": "string",
        "format": "date-time"
      }
    },
    "required": [
      "id",
      "type",
      "status",
      "processedCount",
      "createdCount",
      "updatedCount",
      "skippedCount",
      "failedCount",
      "attempts",
      "maxAttempts",
      "retryAt",
      "lastErrorCategory",
      "createdAt",
      "startedAt",
      "completedAt",
      "updatedAt"
    ],
    "additionalProperties": false
  },
  "maxItems": 100
}
nextCursorобязательно
string | null
totalобязательно
integerminimum: 0
JSON Schema
{
  "type": "object",
  "properties": {
    "runs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 160
          },
          "type": {
            "type": "string",
            "enum": [
              "initial_import",
              "incremental_import",
              "reconcile"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "queued",
              "running",
              "retry_pending",
              "completed",
              "failed",
              "cancelled"
            ]
          },
          "processedCount": {
            "type": "integer",
            "minimum": 0
          },
          "createdCount": {
            "type": "integer",
            "minimum": 0
          },
          "updatedCount": {
            "type": "integer",
            "minimum": 0
          },
          "skippedCount": {
            "type": "integer",
            "minimum": 0
          },
          "failedCount": {
            "type": "integer",
            "minimum": 0
          },
          "attempts": {
            "type": "integer",
            "minimum": 0
          },
          "maxAttempts": {
            "type": "integer",
            "exclusiveMinimum": 0
          },
          "retryAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "lastErrorCategory": {
            "type": [
              "string",
              "null"
            ],
            "maxLength": 120
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "startedAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "completedAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "id",
          "type",
          "status",
          "processedCount",
          "createdCount",
          "updatedCount",
          "skippedCount",
          "failedCount",
          "attempts",
          "maxAttempts",
          "retryAt",
          "lastErrorCategory",
          "createdAt",
          "startedAt",
          "completedAt",
          "updatedAt"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "nextCursor": {
      "type": [
        "string",
        "null"
      ]
    },
    "total": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "runs",
    "nextCursor",
    "total"
  ],
  "additionalProperties": false,
  "$ref": "#/components/schemas/DeveloperIntegrationRunPage"
}
400 Invalid integration operation request
application/problem+json

object

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+json

object

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 operation access unavailable
application/problem+json

object

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 or run not found
application/problem+json

object

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+json

object

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+json

object

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"
  ]
}