Skip to content

Upload Import

Endpoint: POST /api/application-imports/upload

Description: Uploads import data files for the specified application and stages a new import.

Request Body (multipart/form-data)

Field Type Required Description
applicationId text Yes The unique identifier of the application. Accepted as a query parameter or form field. Must reference an existing, non-archived application with a file-based connector.
{fileGroupId} file Yes Import file keyed by the file group ID (GUID) from the connector definition. One field per file the connector requires. Required files must be included; optional files may be omitted. Field name must be a valid GUID matching a connector file group ID. File must not be empty.

Sample Request (curl)

curl -X POST https://host/api/application-imports/upload \
  -H "Authorization: Bearer pa_token" \
  -F "applicationId=b8c1d2e3-4f5a-6b7c-8d9e-0f1a2b3c4d5e" \
  -F "a1b2c3d4-0000-0000-0000-000000000001=@/path/to/employees.csv" \
  -F "a1b2c3d4-0000-0000-0000-000000000002=@/path/to/privileges.csv"

Response Attributes

Field Type Description
id string (GUID) Unique identifier of the created import.
kind string Resource type. Always Application Import.
number integer Sequential import number.
type string Import type.
status string Import status.
createdBy string Username that initiated the import.
buildStart string (ISO 8601) Date and time the import started.
buildEnd string (ISO 8601) Date and time the import completed. null if still running.
log string Import build log output.
files array[object] Files associated with this import.
files[].id string (GUID) Unique identifier of the import file.
files[].fileGroupId string (GUID) File group identifier.
files[].fileGroup string Display name of the file group.
files[].name string Original file name.
metrics object Import metrics. null until the import finishes.

Sample Response (201)

{
  "id": "a9b8c7d6-e5f4-3210-fedc-ba9876543210",
  "kind": "Application Import",
  "number": 48,
  "type": "API",
  "status": "Pending",
  "createdBy": "API Token - Automation Service",
  "buildStart": null,
  "buildEnd": null,
  "log": null,
  "files": [
    {
      "id": "e1d2c3b4-a5f6-7890-1234-567890abcdef",
      "fileGroupId": "a1b2c3d4-0000-0000-0000-000000000001",
      "fileGroup": "Employee File",
      "name": "employees_20251201.csv"
    },
    {
      "id": "f2e3d4c5-b6a7-8901-2345-6789abcdef01",
      "fileGroupId": "a1b2c3d4-0000-0000-0000-000000000002",
      "fileGroup": "User Privileges File",
      "name": "privileges_20251201.csv"
    }
  ],
  "metrics": null
}

Error Response (400)

{
  "error": "validation_error",
  "message": "One or more validation errors occurred",
  "correlationId": "a1b2c3d4e5f6789012345678abcdef01",
  "errors": [
    {
      "field": "a1b2c3d4-0000-0000-0000-000000000001",
      "message": "Required file missing: Employee File"
    }
  ]
}