Skip to content
Testsigma DOCS

Upload a test data profile

POST/test_data/upload

Base URL  https://app.testsigma.com/api/v1

Upload an XLSX file to create a new test data profile in Testsigma using the REST API.

Authenticate with your API key as a Bearer token in the Authorization header. Generate a key →
fileThe local file to upload (multipart file part), e.g. @"<local_path>". An XLS/XLSX file.
encryptedColumnsColumns to encrypt. Use "," to separate multiple column names.
applicationVersionIdID of the application version where the file is to be uploaded.
nameName to give the uploaded test data profile.
notificationEmailEmail address to notify once the upload completes.
idID of the created test data profile.
testDataNameName of the test data profile.
testDataTest data payload (null on creation).
dataData payload (null on creation).
createdByIdUser ID of the creator.
updatedByIdUser ID of the updater.
columnsColumns in the test data profile (null on creation).
createdDateEpoch timestamp when the profile was created.
updatedDateEpoch timestamp when the profile was last updated.
passwordsEncrypted password values (null on creation).
versionIdID of the application version the file was uploaded to.
isMigratedWhether the profile was migrated (null on creation).
messageStatus message for the upload operation.
REQUEST
curl -X POST \
  'https://app.testsigma.com/api/v1/test_data/upload' \
  -H 'Authorization: Bearer <API_KEY>' \
  -F 'file=@<local_path>' \
  -F 'encryptedColumns=Password' \
  -F 'applicationVersionId=10' \
  -F 'name=TestData01' \
  -F 'notificationEmail=example@testsigma.com'
const form = new FormData();
form.append('file', fileInput.files[0]);
form.append('encryptedColumns', 'Password');
form.append('applicationVersionId', '10');
form.append('name', 'TestData01');
form.append('notificationEmail', 'example@testsigma.com');

const response = await fetch('https://app.testsigma.com/api/v1/test_data/upload', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer <API_KEY>' },
  body: form
});
const data = await response.json();
import requests

response = requests.post(
  'https://app.testsigma.com/api/v1/test_data/upload',
  headers={ 'Authorization': 'Bearer <API_KEY>' },
  data={
    'encryptedColumns': 'Password',
    'applicationVersionId': '10',
    'name': 'TestData01',
    'notificationEmail': 'example@testsigma.com'
  },
  files={
    'file': open('<local_path>', 'rb')
  }
)
data = response.json()
RESPONSE200OK
{
  "id": 78,
  "testDataName": "API 01",
  "testData": null,
  "data": null,
  "createdById": 10,
  "updatedById": 10,
  "columns": null,
  "createdDate": 1669806564576,
  "updatedDate": 1669806564576,
  "passwords": null,
  "versionId": 69,
  "isMigrated": null,
  "message": "We will send an email once the Test data profile is created successfully."
}