Initialize

post

Creates a new transfer, returns upload URL and credentials. This operation must be performed before any files can be uploaded to Filemail.

Body
tostring[] | nullableOptional

List of recipients (email addresses). After transfer is complete we will send out download URL to every email in this list. Every specified recipient will receiving a unique download link, which allows the sender to track who and when downloaded the files. When this value is not specified - we will not send any emails and the transfer will be available only by sharing a common private link.

subjectstring · min: 1 · max: 200Required

Transfer subject. This value will be used on download pages as the main title, and as the subject of emails that are sent to recipients.

messagestring | nullableOptional

Transfer message. We will use this text as the introductory paragraph on download pages, and as the main body of emails that are sent to recipients.

passwordstring | nullableOptional

Optional password that protects the transfer. When specified: access to download page, downloading the files and fetching transfer details will be possible only after providing the password.

confirmationboolean | nullableOptional

When set to true we will send out a confirmation email to the sender after transfer is complete.

notifyboolean | nullableOptional

When set to true we will send out a confirmation email to the sender after transfer is downloaded. When recipients have been specified in the to field, the notification email will include information about a specific recipient who performed a particular download. Note: we will send one email after first download, and a final summary email after the second download.

daysinteger · int32 | nullableOptional

The number of days until the transfer expires. Expiration is counted since the date of transfer creation. Use -1 to create a permanent transfer (one that never expires). Note: permanent transfers is a feature available only for specific Filemail plans. Please refer to our plan comparison page at https://www.filemail.com/price-plans-comparison.

transfersizeinteger · int64 | nullableOptional

Informational field - expected size of the transfer in bytes. This value may be helpful only in the event of failures during file uploads.

sourcedetailsstring | nullableOptional

Informational field - you can use it to mark the code library or user-agent used to create the transfer.

companyidstring | nullableOptional

Identifier of a corporation when creating an 'Incoming' transfer. In this case transfer will belong to the receiving company, not the sender.

fileRequestIdstring | nullableOptional

When creating an 'Incoming' transfer - id of the associated file request. Using this value will link the transfer to a 'File request'. Must match the provided companyid.

fileRequestShareIdstring | nullableOptional

When creating an 'Incoming' transfer - id of the associated file request share. Using this value will link the transfer to a specific person, with whom a 'File request' has been shared. Must match the provided companyid.

incomingpageidstring | nullableOptional

When creating an 'Incoming' transfer - id of the associated incoming page. Using this value will link the transfer to a specific incoming page and allows to use the page-specific custom fields.

incomingpasswordstring | nullableOptional

When the page specified via incomingpageid is password protected - you must provide the password to be able to create transfer linked to that page.

Responses
200
OK
post
POST /transfer/initialize HTTP/1.1
Host: api-public.filemail.com
Content-Type: application/json-patch+json
Accept: */*
Content-Length: 316

{
  "to": [
    "text"
  ],
  "subject": "text",
  "message": "text",
  "password": "text",
  "confirmation": true,
  "notify": true,
  "days": 1,
  "transfersize": 1,
  "sourcedetails": "text",
  "companyid": "text",
  "fileRequestId": "text",
  "fileRequestShareId": "text",
  "incomingpageid": "text",
  "incomingpassword": "text",
  "customfields": [
    {
      "id": "text",
      "value": "text"
    }
  ]
}
{
  "responsestatus": "OK",
  "errorid": "text",
  "errormessage": "text",
  "data": {
    "transferid": "text",
    "transferkey": "text",
    "transferurl": "text",
    "region": "text",
    "alternate_urls": [
      "text"
    ],
    "transferip": "text",
    "udpport": 1,
    "udpthreshold": 1,
    "customfields": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    }
  },
  "errorcode": 1
}

Last updated

Was this helpful?