Skip to content

EmailControllerApi

All URIs are relative to https://api.mailslurp.com

Method HTTP request Description
applyImapFlagOperation POST /emails/{emailId}/imap-flag-operation Set IMAP flags associated with a message. Only supports 'Seen' flag.
deleteAllEmails DELETE /emails Delete all emails in all inboxes.
deleteEmail DELETE /emails/{emailId} Delete an email
downloadAttachment GET /emails/{emailId}/attachments/{attachmentId} Get email attachment bytes. Returned as octet-stream with content type header. If you have trouble with byte responses try the downloadAttachmentBase64 response endpoints and convert the base 64 encoded content to a file or string.
downloadAttachmentBase64 GET /emails/{emailId}/attachments/{attachmentId}/base64 Get email attachment as base64 encoded string as an alternative to binary responses. Decode the base64FileContents as a utf-8 encoded string or array of bytes depending on the contentType.
downloadBody GET /emails/{emailId}/body Get email body as string. Returned as plain/text with content type header.
downloadBodyBytes GET /emails/{emailId}/body-bytes Get email body in bytes. Returned as octet-stream with content type header.
forwardEmail POST /emails/{emailId}/forward Forward email to recipients
getAttachmentMetaData GET /emails/{emailId}/attachments/{attachmentId}/metadata Get email attachment metadata. This is the contentType and contentLength of an attachment. To get the individual attachments use the downloadAttachment methods.
getEmail GET /emails/{emailId} Get email content including headers and body. Expects email to exist by ID. For emails that may not have arrived yet use the WaitForController.
getEmailAttachments GET /emails/{emailId}/attachments Get all email attachment metadata. Metadata includes name and size of attachments.
getEmailContentMatch POST /emails/{emailId}/contentMatch Get email content regex pattern match results. Runs regex against email body and returns match groups.
getEmailCount GET /emails/emails/count Get email count
getEmailHTML GET /emails/{emailId}/html Get email content as HTML. For displaying emails in browser context.
getEmailHTMLQuery GET /emails/{emailId}/htmlQuery Parse and return text from an email, stripping HTML and decoding encoded characters
getEmailLinks GET /emails/{emailId}/links Parse and return list of links found in an email (only works for HTML content)
getEmailPreviewURLs GET /emails/{emailId}/urls Get email URLs for viewing in browser or downloading
getEmailTextLines GET /emails/{emailId}/textLines Parse and return text from an email, stripping HTML and decoding encoded characters
getEmailsPaginated GET /emails Get all emails in all inboxes in paginated form. Email API list all.
getGravatarUrlForEmailAddress GET /emails/gravatarFor
getLatestEmail GET /emails/latest Get latest email in all inboxes. Most recently received.
getLatestEmailInInbox1 GET /emails/latestIn Get latest email in an inbox. Use WaitForController to get emails that may not have arrived yet.
getOrganizationEmailsPaginated GET /emails/organization Get all organization emails. List team or shared test email accounts
getRawEmailContents GET /emails/{emailId}/raw Get raw email string. Returns unparsed raw SMTP message with headers and body.
getRawEmailJson GET /emails/{emailId}/raw/json Get raw email in JSON. Unparsed SMTP message in JSON wrapper format.
getUnreadEmailCount GET /emails/unreadCount Get unread email count
markAsRead PATCH /emails/{emailId}/read Mark an email as read on unread
replyToEmail PUT /emails/{emailId} Reply to an email
sendEmailSourceOptional POST /emails Send email
validateEmail POST /emails/{emailId}/validate Validate email HTML contents

EmailPreview applyImapFlagOperation(emailId, imapFlagOperationOptions)

Set IMAP flags associated with a message. Only supports 'Seen' flag.

Apply RFC3501 section-2.3.2 IMAP flag operations on an email

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | 
val imapFlagOperationOptions : ImapFlagOperationOptions =  // ImapFlagOperationOptions | 
try {
    val result : EmailPreview = apiInstance.applyImapFlagOperation(emailId, imapFlagOperationOptions)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#applyImapFlagOperation")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#applyImapFlagOperation")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID
imapFlagOperationOptions ImapFlagOperationOptions

Return type

EmailPreview

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: application/json
  • Accept: /

deleteAllEmails()

Delete all emails in all inboxes.

Deletes all emails in your account. Be careful as emails cannot be recovered

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
try {
    apiInstance.deleteAllEmails()
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#deleteAllEmails")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#deleteAllEmails")
    e.printStackTrace()
}

Parameters

This endpoint does not need any parameter.

Return type

null (empty response body)

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

deleteEmail(emailId)

Delete an email

Deletes an email and removes it from the inbox. Deleted emails cannot be recovered.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email to delete
try {
    apiInstance.deleteEmail(emailId)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#deleteEmail")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#deleteEmail")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email to delete

Return type

null (empty response body)

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

kotlin.ByteArray downloadAttachment(emailId, attachmentId, apiKey)

Get email attachment bytes. Returned as octet-stream with content type header. If you have trouble with byte responses try the downloadAttachmentBase64 response endpoints and convert the base 64 encoded content to a file or string.

Returns the specified attachment for a given email as a stream / array of bytes. You can find attachment ids in email responses endpoint responses. The response type is application/octet-stream.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
val attachmentId : kotlin.String = attachmentId_example // kotlin.String | ID of attachment
val apiKey : kotlin.String = apiKey_example // kotlin.String | Can pass apiKey in url for this request if you wish to download the file in a browser. Content type will be set to original content type of the attachment file. This is so that browsers can download the file correctly.
try {
    val result : kotlin.ByteArray = apiInstance.downloadAttachment(emailId, attachmentId, apiKey)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#downloadAttachment")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#downloadAttachment")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email
attachmentId kotlin.String ID of attachment
apiKey kotlin.String Can pass apiKey in url for this request if you wish to download the file in a browser. Content type will be set to original content type of the attachment file. This is so that browsers can download the file correctly. [optional]

Return type

kotlin.ByteArray

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/octet-stream

DownloadAttachmentDto downloadAttachmentBase64(emailId, attachmentId)

Get email attachment as base64 encoded string as an alternative to binary responses. Decode the base64FileContents as a utf-8 encoded string or array of bytes depending on the contentType.

Returns the specified attachment for a given email as a base 64 encoded string. The response type is application/json. This method is similar to the downloadAttachment method but allows some clients to get around issues with binary responses.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
val attachmentId : kotlin.String = attachmentId_example // kotlin.String | ID of attachment
try {
    val result : DownloadAttachmentDto = apiInstance.downloadAttachmentBase64(emailId, attachmentId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#downloadAttachmentBase64")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#downloadAttachmentBase64")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email
attachmentId kotlin.String ID of attachment

Return type

DownloadAttachmentDto

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

kotlin.String downloadBody(emailId)

Get email body as string. Returned as plain/text with content type header.

Returns the specified email body for a given email as a string

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
try {
    val result : kotlin.String = apiInstance.downloadBody(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#downloadBody")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#downloadBody")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email

Return type

kotlin.String

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: text/plain, text/html

kotlin.ByteArray downloadBodyBytes(emailId)

Get email body in bytes. Returned as octet-stream with content type header.

Returns the specified email body for a given email as a stream / array of bytes.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
try {
    val result : kotlin.ByteArray = apiInstance.downloadBodyBytes(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#downloadBodyBytes")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#downloadBodyBytes")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email

Return type

kotlin.ByteArray

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/octet-stream

SentEmailDto forwardEmail(emailId, forwardEmailOptions)

Forward email to recipients

Forward an existing email to new recipients. The sender of the email will be the inbox that received the email you are forwarding. You can override the sender with the from option. Note you must have access to the from address in MailSlurp to use the override. For more control consider fetching the email and sending it a new using the send email endpoints.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
val forwardEmailOptions : ForwardEmailOptions =  // ForwardEmailOptions | 
try {
    val result : SentEmailDto = apiInstance.forwardEmail(emailId, forwardEmailOptions)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#forwardEmail")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#forwardEmail")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email
forwardEmailOptions ForwardEmailOptions

Return type

SentEmailDto

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: application/json
  • Accept: /

AttachmentMetaData getAttachmentMetaData(emailId, attachmentId)

Get email attachment metadata. This is the contentType and contentLength of an attachment. To get the individual attachments use the downloadAttachment methods.

Returns the metadata such as name and content-type for a given attachment and email.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
val attachmentId : kotlin.String = attachmentId_example // kotlin.String | ID of attachment
try {
    val result : AttachmentMetaData = apiInstance.getAttachmentMetaData(emailId, attachmentId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getAttachmentMetaData")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getAttachmentMetaData")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email
attachmentId kotlin.String ID of attachment

Return type

AttachmentMetaData

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

Email getEmail(emailId, decode)

Get email content including headers and body. Expects email to exist by ID. For emails that may not have arrived yet use the WaitForController.

Returns a email summary object with headers and content. To retrieve the raw unparsed email use the getRawEmail endpoints

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | 
val decode : kotlin.Boolean = true // kotlin.Boolean | Decode email body quoted-printable encoding to plain text. SMTP servers often encode text using quoted-printable format (for instance `=D7`). This can be a pain for testing
try {
    val result : Email = apiInstance.getEmail(emailId, decode)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmail")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmail")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID
decode kotlin.Boolean Decode email body quoted-printable encoding to plain text. SMTP servers often encode text using quoted-printable format (for instance =D7). This can be a pain for testing [optional] [default to false]

Return type

Email

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

kotlin.collections.List getEmailAttachments(emailId)

Get all email attachment metadata. Metadata includes name and size of attachments.

Returns an array of attachment metadata such as name and content-type for a given email if present.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
try {
    val result : kotlin.collections.List<AttachmentMetaData> = apiInstance.getEmailAttachments(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailAttachments")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailAttachments")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email

Return type

kotlin.collections.List

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

EmailContentMatchResult getEmailContentMatch(emailId, contentMatchOptions)

Get email content regex pattern match results. Runs regex against email body and returns match groups.

Return the matches for a given Java style regex pattern. Do not include the typical / at start or end of regex in some languages. Given an example your code is: 12345 the pattern to extract match looks like code is: (d{6}). This will return an array of matches with the first matching the entire pattern and the subsequent matching the groups: ['code is: 123456', '123456'] See https://docs.oracle.com/javase/8/docs/api/java/util/regex/ for more information of available patterns.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email to match against
val contentMatchOptions : ContentMatchOptions =  // ContentMatchOptions | 
try {
    val result : EmailContentMatchResult = apiInstance.getEmailContentMatch(emailId, contentMatchOptions)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailContentMatch")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailContentMatch")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email to match against
contentMatchOptions ContentMatchOptions

Return type

EmailContentMatchResult

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: application/json
  • Accept: /

CountDto getEmailCount()

Get email count

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
try {
    val result : CountDto = apiInstance.getEmailCount()
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailCount")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailCount")
    e.printStackTrace()
}

Parameters

This endpoint does not need any parameter.

Return type

CountDto

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

kotlin.String getEmailHTML(emailId, decode)

Get email content as HTML. For displaying emails in browser context.

Retrieve email content as HTML response for viewing in browsers. Decodes quoted-printable entities and converts charset to UTF-8. Pass your API KEY as a request parameter when viewing in a browser: ?apiKey=xxx

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | 
val decode : kotlin.Boolean = true // kotlin.Boolean | 
try {
    val result : kotlin.String = apiInstance.getEmailHTML(emailId, decode)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailHTML")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailHTML")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID
decode kotlin.Boolean [optional] [default to false]

Return type

kotlin.String

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: text/html

EmailTextLinesResult getEmailHTMLQuery(emailId, htmlSelector)

Parse and return text from an email, stripping HTML and decoding encoded characters

Parse an email body and return the content as an array of text. HTML parsing uses JSoup which supports JQuery/CSS style selectors

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email to perform HTML query on
val htmlSelector : kotlin.String = htmlSelector_example // kotlin.String | HTML selector to search for. Uses JQuery/JSoup/CSS style selector like '.my-div' to match content. See https://jsoup.org/apidocs/org/jsoup/select/ for more information.
try {
    val result : EmailTextLinesResult = apiInstance.getEmailHTMLQuery(emailId, htmlSelector)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailHTMLQuery")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailHTMLQuery")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email to perform HTML query on
htmlSelector kotlin.String HTML selector to search for. Uses JQuery/JSoup/CSS style selector like '.my-div' to match content. See https://jsoup.org/apidocs/org/jsoup/select/ for more information.

Return type

EmailTextLinesResult

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

EmailLinksResult getEmailLinks(emailId)

Parse and return list of links found in an email (only works for HTML content)

HTML parsing uses JSoup and UNIX line separators. Searches content for href attributes

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email to fetch text for
try {
    val result : EmailLinksResult = apiInstance.getEmailLinks(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailLinks")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailLinks")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email to fetch text for

Return type

EmailLinksResult

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

EmailPreviewUrls getEmailPreviewURLs(emailId)

Get email URLs for viewing in browser or downloading

Get a list of URLs for email content as text/html or raw SMTP message for viewing the message in a browser.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | 
try {
    val result : EmailPreviewUrls = apiInstance.getEmailPreviewURLs(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailPreviewURLs")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailPreviewURLs")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID

Return type

EmailPreviewUrls

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

EmailTextLinesResult getEmailTextLines(emailId, decodeHtmlEntities, lineSeparator)

Parse and return text from an email, stripping HTML and decoding encoded characters

Parse an email body and return the content as an array of strings. HTML parsing uses JSoup and UNIX line separators.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email to fetch text for
val decodeHtmlEntities : kotlin.Boolean = true // kotlin.Boolean | Decode HTML entities
val lineSeparator : kotlin.String = lineSeparator_example // kotlin.String | Line separator character
try {
    val result : EmailTextLinesResult = apiInstance.getEmailTextLines(emailId, decodeHtmlEntities, lineSeparator)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailTextLines")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailTextLines")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email to fetch text for
decodeHtmlEntities kotlin.Boolean Decode HTML entities [optional]
lineSeparator kotlin.String Line separator character [optional]

Return type

EmailTextLinesResult

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

PageEmailProjection getEmailsPaginated(inboxId, page, size, sort, unreadOnly, searchFilter, since, before)

Get all emails in all inboxes in paginated form. Email API list all.

By default returns all emails across all inboxes sorted by ascending created at date. Responses are paginated. You can restrict results to a list of inbox IDs. You can also filter out read messages

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val inboxId : kotlin.collections.List<java.util.UUID> =  // kotlin.collections.List<java.util.UUID> | Optional inbox ids to filter by. Can be repeated. By default will use all inboxes belonging to your account.
val page : kotlin.Int = 56 // kotlin.Int | Optional page  in email list pagination
val size : kotlin.Int = 56 // kotlin.Int | Optional page size in email list pagination. Maximum size is 100. Use page  and sort to page through larger results
val sort : kotlin.String = sort_example // kotlin.String | Optional createdAt sort direction ASC or DESC
val unreadOnly : kotlin.Boolean = true // kotlin.Boolean | Optional filter for unread emails only. All emails are considered unread until they are viewed in the dashboard or requested directly
val searchFilter : kotlin.String = searchFilter_example // kotlin.String | Optional search filter. Searches email recipients, sender, subject, email address and ID. Does not search email body
val since : java.time.OffsetDateTime = 2013-10-20T19:20:30+01:00 // java.time.OffsetDateTime | Optional filter emails received after given date time
val before : java.time.OffsetDateTime = 2013-10-20T19:20:30+01:00 // java.time.OffsetDateTime | Optional filter emails received before given date time
try {
    val result : PageEmailProjection = apiInstance.getEmailsPaginated(inboxId, page, size, sort, unreadOnly, searchFilter, since, before)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getEmailsPaginated")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getEmailsPaginated")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
inboxId kotlin.collections.List Optional inbox ids to filter by. Can be repeated. By default will use all inboxes belonging to your account. [optional]
page kotlin.Int Optional page in email list pagination [optional] [default to 0]
size kotlin.Int Optional page size in email list pagination. Maximum size is 100. Use page and sort to page through larger results [optional] [default to 20]
sort kotlin.String Optional createdAt sort direction ASC or DESC [optional] [default to ASC] [enum: ASC, DESC]
unreadOnly kotlin.Boolean Optional filter for unread emails only. All emails are considered unread until they are viewed in the dashboard or requested directly [optional] [default to false]
searchFilter kotlin.String Optional search filter. Searches email recipients, sender, subject, email address and ID. Does not search email body [optional]
since java.time.OffsetDateTime Optional filter emails received after given date time [optional]
before java.time.OffsetDateTime Optional filter emails received before given date time [optional]

Return type

PageEmailProjection

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

GravatarUrl getGravatarUrlForEmailAddress(emailAddress, size)

Get gravatar url for email address

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailAddress : kotlin.String = emailAddress_example // kotlin.String | 
val size : kotlin.String = size_example // kotlin.String | 
try {
    val result : GravatarUrl = apiInstance.getGravatarUrlForEmailAddress(emailAddress, size)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getGravatarUrlForEmailAddress")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getGravatarUrlForEmailAddress")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailAddress kotlin.String
size kotlin.String [optional]

Return type

GravatarUrl

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

Email getLatestEmail(inboxIds)

Get latest email in all inboxes. Most recently received.

Get the newest email in all inboxes or in a passed set of inbox IDs

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val inboxIds : kotlin.collections.List<java.util.UUID> =  // kotlin.collections.List<java.util.UUID> | Optional set of inboxes to filter by. Only get the latest email from these inbox IDs. If not provided will search across all inboxes
try {
    val result : Email = apiInstance.getLatestEmail(inboxIds)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getLatestEmail")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getLatestEmail")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
inboxIds kotlin.collections.List Optional set of inboxes to filter by. Only get the latest email from these inbox IDs. If not provided will search across all inboxes [optional]

Return type

Email

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

Email getLatestEmailInInbox1(inboxId)

Get latest email in an inbox. Use WaitForController to get emails that may not have arrived yet.

Get the newest email in all inboxes or in a passed set of inbox IDs

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val inboxId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of the inbox you want to get the latest email from
try {
    val result : Email = apiInstance.getLatestEmailInInbox1(inboxId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getLatestEmailInInbox1")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getLatestEmailInInbox1")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
inboxId java.util.UUID ID of the inbox you want to get the latest email from

Return type

Email

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

PageEmailProjection getOrganizationEmailsPaginated(inboxId, page, size, sort, unreadOnly, searchFilter, since, before)

Get all organization emails. List team or shared test email accounts

By default returns all emails across all team inboxes sorted by ascending created at date. Responses are paginated. You can restrict results to a list of inbox IDs. You can also filter out read messages

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val inboxId : kotlin.collections.List<java.util.UUID> =  // kotlin.collections.List<java.util.UUID> | Optional inbox ids to filter by. Can be repeated. By default will use all inboxes belonging to your account.
val page : kotlin.Int = 56 // kotlin.Int | Optional page  in email list pagination
val size : kotlin.Int = 56 // kotlin.Int | Optional page size in email list pagination. Maximum size is 100. Use page  and sort to page through larger results
val sort : kotlin.String = sort_example // kotlin.String | Optional createdAt sort direction ASC or DESC
val unreadOnly : kotlin.Boolean = true // kotlin.Boolean | Optional filter for unread emails only. All emails are considered unread until they are viewed in the dashboard or requested directly
val searchFilter : kotlin.String = searchFilter_example // kotlin.String | Optional search filter search filter for emails.
val since : java.time.OffsetDateTime = 2013-10-20T19:20:30+01:00 // java.time.OffsetDateTime | Optional filter emails received after given date time
val before : java.time.OffsetDateTime = 2013-10-20T19:20:30+01:00 // java.time.OffsetDateTime | Optional filter emails received before given date time
try {
    val result : PageEmailProjection = apiInstance.getOrganizationEmailsPaginated(inboxId, page, size, sort, unreadOnly, searchFilter, since, before)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getOrganizationEmailsPaginated")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getOrganizationEmailsPaginated")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
inboxId kotlin.collections.List Optional inbox ids to filter by. Can be repeated. By default will use all inboxes belonging to your account. [optional]
page kotlin.Int Optional page in email list pagination [optional] [default to 0]
size kotlin.Int Optional page size in email list pagination. Maximum size is 100. Use page and sort to page through larger results [optional] [default to 20]
sort kotlin.String Optional createdAt sort direction ASC or DESC [optional] [default to ASC] [enum: ASC, DESC]
unreadOnly kotlin.Boolean Optional filter for unread emails only. All emails are considered unread until they are viewed in the dashboard or requested directly [optional] [default to false]
searchFilter kotlin.String Optional search filter search filter for emails. [optional]
since java.time.OffsetDateTime Optional filter emails received after given date time [optional]
before java.time.OffsetDateTime Optional filter emails received before given date time [optional]

Return type

PageEmailProjection

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

kotlin.String getRawEmailContents(emailId)

Get raw email string. Returns unparsed raw SMTP message with headers and body.

Returns a raw, unparsed, and unprocessed email. If your client has issues processing the response it is likely due to the response content-type which is text/plain. If you need a JSON response content-type use the getRawEmailJson endpoint

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
try {
    val result : kotlin.String = apiInstance.getRawEmailContents(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getRawEmailContents")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getRawEmailContents")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email

Return type

kotlin.String

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: text/plain

RawEmailJson getRawEmailJson(emailId)

Get raw email in JSON. Unparsed SMTP message in JSON wrapper format.

Returns a raw, unparsed, and unprocessed email wrapped in a JSON response object for easier handling when compared with the getRawEmail text/plain response

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
try {
    val result : RawEmailJson = apiInstance.getRawEmailJson(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getRawEmailJson")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getRawEmailJson")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email

Return type

RawEmailJson

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

UnreadCount getUnreadEmailCount()

Get unread email count

Get number of emails unread. Unread means has not been viewed in dashboard or returned in an email API response

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
try {
    val result : UnreadCount = apiInstance.getUnreadEmailCount()
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#getUnreadEmailCount")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#getUnreadEmailCount")
    e.printStackTrace()
}

Parameters

This endpoint does not need any parameter.

Return type

UnreadCount

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

EmailPreview markAsRead(emailId, read)

Mark an email as read on unread

Marks an email as read or unread. Pass boolean read flag to set value. This is useful if you want to read an email but keep it as unread

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | 
val read : kotlin.Boolean = true // kotlin.Boolean | What value to assign to email read property. Default true.
try {
    val result : EmailPreview = apiInstance.markAsRead(emailId, read)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#markAsRead")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#markAsRead")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID
read kotlin.Boolean What value to assign to email read property. Default true. [optional] [default to true]

Return type

EmailPreview

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /

SentEmailDto replyToEmail(emailId, replyToEmailOptions)

Reply to an email

Send the reply to the email sender or reply-to and include same subject cc bcc etc. Reply to an email and the contents will be sent with the existing subject to the emails to, cc, and bcc.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of the email that should be replied to
val replyToEmailOptions : ReplyToEmailOptions =  // ReplyToEmailOptions | 
try {
    val result : SentEmailDto = apiInstance.replyToEmail(emailId, replyToEmailOptions)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#replyToEmail")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#replyToEmail")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of the email that should be replied to
replyToEmailOptions ReplyToEmailOptions

Return type

SentEmailDto

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: application/json
  • Accept: /

sendEmailSourceOptional(inboxId, sendEmailOptions, useDomainPool, virtualSend)

Send email

Alias for InboxController.sendEmail method - see original method for full details. Sends an email from a given inbox that you have created. If no inbox is supplied a random inbox will be created for you and used to send the email.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val inboxId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of the inbox you want to send the email from
val sendEmailOptions : SendEmailOptions =  // SendEmailOptions | 
val useDomainPool : kotlin.Boolean = true // kotlin.Boolean | Use domain pool. Optionally create inbox to send from using the mailslurp domain pool.
val virtualSend : kotlin.Boolean = true // kotlin.Boolean | Optionally create inbox to send from that is a virtual inbox and won't send to external addresses
try {
    apiInstance.sendEmailSourceOptional(inboxId, sendEmailOptions, useDomainPool, virtualSend)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#sendEmailSourceOptional")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#sendEmailSourceOptional")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
inboxId java.util.UUID ID of the inbox you want to send the email from
sendEmailOptions SendEmailOptions
useDomainPool kotlin.Boolean Use domain pool. Optionally create inbox to send from using the mailslurp domain pool. [optional]
virtualSend kotlin.Boolean Optionally create inbox to send from that is a virtual inbox and won't send to external addresses [optional]

Return type

null (empty response body)

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: application/json
  • Accept: Not defined

ValidationDto validateEmail(emailId)

Validate email HTML contents

Validate the HTML content of email if HTML is found. Considered valid if no HTML is present.

Example

// Import classes:
//import com.mailslurp.infrastructure.*
//import com.mailslurp.models.*

val apiInstance = EmailControllerApi()
val emailId : java.util.UUID = 38400000-8cf0-11bd-b23e-10b96e4ef00d // java.util.UUID | ID of email
try {
    val result : ValidationDto = apiInstance.validateEmail(emailId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling EmailControllerApi#validateEmail")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling EmailControllerApi#validateEmail")
    e.printStackTrace()
}

Parameters

Name Type Description Notes
emailId java.util.UUID ID of email

Return type

ValidationDto

Authorization

Configure API_KEY: ApiClient.apiKey["x-api-key"] = "" ApiClient.apiKeyPrefix["x-api-key"] = ""

HTTP request headers

  • Content-Type: Not defined
  • Accept: /