---
title: "Create magic link"
method: POST
path: "/magic-links"
tags: ["Magic Links"]
---

# Create magic link

`POST /magic-links`

Add a new magic link.

## Request body

- CreateMagicLinkRequest
  - `magic_link` union, required
    - ABSMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'abs', required — The vendor of the destination.
      - `bucket_name` string, required — The name of the bucket where the data will be stored.
      - `bucket_access_id` string
    - AthenaMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'athena', required — The vendor of the destination.
      - `bucket_name` string, required — The name of the S3 bucket where the data will be stored.
    - BigQueryMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'bigquery', required — The vendor of the destination.
      - `host` string, required — The BigQuery Project ID.
      - `bucket_name` string, required — The name of the GCS bucket where the data will be stored.
    - ClickhouseMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'clickhouse', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
      - `bucket_vendor` 's3' | 'gcs', required — The vendor of the staging bucket.
      - `bucket_name` string, required — The name of the bucket where the data will be stored.
    - DatabricksMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'databricks', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
      - `metastore` 'unity_catalog' | 'hive', required — The name of the metastore where the data will be stored.
      - `bucket_name` string — The name of the bucket where the data will be stored.
      - `bucket_vendor` '' | 's3' — The vendor of the staging bucket.
    - DeltaLakeMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'delta_lake', required — The vendor of the destination.
      - `bucket_name` string, required — The name of the bucket where the data will be stored.
      - `bucket_vendor` 's3' | 's3_compatible' | 'gcs' | 'abs', required — The vendor of the staging bucket.
      - `host` string — Required for S3 Compatible. The hostname of the database.
      - `bucket_access_id` string — Required for ABS.The ABS storage account name.
    - GCSMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'gcs', required — The vendor of the destination.
      - `bucket_name` string, required — The name of the bucket where the data will be stored.
    - GoogleSheetsMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'google_sheets', required — The vendor of the destination.
      - `host` string, required — URL of the Google Sheet to sync data to. Must be of the form https://docs.google.com/spreadsheets/d/123456789...
    - RedshiftMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'redshift' | 'redshift_serverless', required — The vendor of the destination.
      - `host` string, required — The host address of the database.
      - `bucket_name` string, required — The name of the S3 bucket where the data will be stored.
    - RedshiftMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'redshift' | 'redshift_serverless', required — The vendor of the destination.
      - `host` string, required — The host address of the database.
      - `bucket_name` string, required — The name of the S3 bucket where the data will be stored.
    - S3MagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 's3', required — The vendor of the destination.
      - `bucket_name` string, required — The name of the S3 bucket where the data will be stored.
    - S3CompatibleMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 's3_compatible', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
      - `bucket_name` string, required — The name of the S3 bucket where the data will be stored.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - IcebergMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'iceberg', required — The vendor of the destination.
      - `catalog` 'catalog_glue' | 'catalog_s3_tables' | 'catalog_iceberg_rest', required
      - `bucket_name` string, required — The name of the bucket where the data will be stored.
      - `host` string — The hostname of the catalog. Required for REST catalog.
      - `bucket_vendor` 's3' | 's3_compatible' | 'gcs' | 'abs' — The vendor of the staging bucket.
      - `bucket_host` string — The hostname of the S3 compatible bucket. Required for REST catalog with S3 compatible bucket.
      - `bucket_access_id` string — The ABS storage account name. Required for REST catalog with ABS bucket.
      - `table_bucket_arn` string — The ARN of the S3 Tables bucket. Required for S3 tables.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - MotherDuckMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'motherduck', required — The vendor of the destination.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - GenericMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'aurora_postgres' | 'aurora_mysql' | 'mongodb' | 'mysql' | 'oracle' | 'postgres' | 'sql_server' | 'singlestore' | 'sftp', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.
    - SnowflakeMagicLinkOptions
      - `name` string, required — Descriptive name for the destination created with this Magic Link. This will only be visible internally and is only used as a reference.
      - `set_destination_enabled` boolean — Connection will be enabled on creation and data will begin transferring upon successful link submission.
      - `redirect_url` string — The user will be redirected to the provided URL after successful form submission. If left blank the user will remain on the successful submission page.
      - `recipient_id` string, uuid
      - `vendor` 'snowflake', required — The vendor of the destination.
      - `host` string, required — The hostname of the database.

## Response `200`

OK

- object
  - `status` 'success', required
  - `data` GetMagicLinkResponse, required
    - `magic_link` MagicLinkResource, required
      - `id` string, required — The unique identifier for the recipient.
      - `name` string, required — The name of the recipient.
      - `products` string[], required — The products that the recipient has assigned.
      - `id_in_provider_system` string, required — The ID used in source system for the recipient.
      - `recipient_id` string
      - `host` string, required
      - `link` string, required
      - `has_been_used` boolean, required
      - `created_at` string, date-time, required
      - `bucket_name` string, required
      - `vendor` string, required
      - `available_models` string[], required
      - `bucket_access_id` string
      - `bucket_vendor` string
      - `ssh_public_key` string
      - `redirect_url` string
      - `set_destination_enabled` boolean, required
      - `metastore` string
      - `catalog` string
      - `bucket_host` string
      - `table_bucket_arn` string
  - `message` string, required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/prequel/apis/prequel-data-export.md) · [All operations](https://skmtc.net/prequel/apis/prequel-data-export/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/prequel/prequel-data-export/versions/09c662a871f8/schema)
