Skip to main content
POST
/
migrations
Create a migration
curl --request POST \
  --url https://app.vern.so/api/v1/migrations \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "name": "Acme Corp",
  "source": "Salesforce",
  "external_id": "acme-001",
  "templates": [
    "contacts"
  ]
}
'
{
  "migration": {
    "id": "c0a8012e-4f1b-4d3a-9b2c-7e6f5a4b3c2d",
    "name": "Acme Corp",
    "source": "Salesforce",
    "status": "awaiting_files",
    "templates": [
      {
        "slug": "contacts",
        "name": "Contacts"
      }
    ]
  }
}

Authorizations

x-api-key
string
header
required

Your Vern API key. Create one at Settings → API keys.

Body

application/json
name
string
required

Display name for the migration (e.g. the customer's org name).

source
string

The source name this migration comes from. Optional — omit for a sourceless migration.

external_id
string

Your own identifier for this customer. Alphanumeric, hyphens, underscores. Makes creation idempotent.

Maximum string length: 255
Pattern: ^[a-zA-Z0-9_-]+$
templates
string[]

Template slugs to create sheets from. Omit to use every active template.

Response

The created migration (200 when an existing migration is returned via external_id idempotency).

migration
object