# EmailControllerAPI

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

Method HTTP request Description
deleteAllEmails DELETE /emails Delete all emails
deleteEmail DELETE /emails/{emailId} Delete an email
downloadAttachment GET /emails/{emailId}/attachments/{attachmentId} Get email attachment bytes. If you have trouble with byte responses try the `downloadAttachmentBase64` response endpoints.
downloadAttachmentBase64 GET /emails/{emailId}/attachments/{attachmentId}/base64 Get email attachment as base64 encoded string (alternative to binary responses)
forwardEmail POST /emails/{emailId}/forward Forward email
getAttachmentMetaData GET /emails/{emailId}/attachments/{attachmentId}/metadata Get email attachment metadata
getAttachments GET /emails/{emailId}/attachments Get all email attachment metadata
getEmail GET /emails/{emailId} Get email content
getEmailContentMatch POST /emails/{emailId}/contentMatch Get email content regex pattern match results. Runs regex against email body and returns match groups.
getEmailHTML GET /emails/{emailId}/html Get email content as HTML
getEmailsPaginated GET /emails Get all emails
getRawEmailContents GET /emails/{emailId}/raw Get raw email string
getRawEmailJson GET /emails/{emailId}/raw/json Get raw email in JSON
getUnreadEmailCount GET /emails/unreadCount Get unread email count
validateEmail POST /emails/{emailId}/validate Validate email

# deleteAllEmails

    open class func deleteAllEmails(completion: @escaping (_ data: Void?, _ error: Error?) -> Void)

Delete all emails

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

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
// Delete all emails
EmailControllerAPI.deleteAllEmails() { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

This endpoint does not need any parameter.

# Return type

Void (empty response body)

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# deleteEmail

    open class func deleteEmail(emailId: UUID, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)

Delete an email

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

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email to delete
// Delete an email
EmailControllerAPI.deleteEmail(emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID ID of email to delete

# Return type

Void (empty response body)

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# downloadAttachment

    open class func downloadAttachment(attachmentId: String, emailId: UUID, apiKey: String? = nil, completion: @escaping (_ data: Data?, _ error: Error?) -> Void)

Get email attachment bytes. If you have trouble with byte responses try the downloadAttachmentBase64 response endpoints.

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

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let attachmentId = "attachmentId_example" // String | ID of attachment
let emailId = 987 // UUID | ID of email
let apiKey = "apiKey_example" // 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)
// Get email attachment bytes. If you have trouble with byte responses try the `downloadAttachmentBase64` response endpoints.
EmailControllerAPI.downloadAttachment(attachmentId: attachmentId, emailId: emailId, apiKey: apiKey) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
attachmentId String ID of attachment
emailId UUID ID of email
apiKey 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

Data

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# downloadAttachmentBase64

    open class func downloadAttachmentBase64(attachmentId: String, emailId: UUID, completion: @escaping (_ data: DownloadAttachmentDto?, _ error: Error?) -> Void)

Get email attachment as base64 encoded string (alternative to binary responses)

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

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let attachmentId = "attachmentId_example" // String | ID of attachment
let emailId = 987 // UUID | ID of email
// Get email attachment as base64 encoded string (alternative to binary responses)
EmailControllerAPI.downloadAttachmentBase64(attachmentId: attachmentId, emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
attachmentId String ID of attachment
emailId UUID ID of email

# Return type

DownloadAttachmentDto

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# forwardEmail

    open class func forwardEmail(emailId: UUID, forwardEmailOptions: ForwardEmailOptions, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)

Forward email

Forward an existing email to new recipients.

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email
let forwardEmailOptions = ForwardEmailOptions(bcc: ["bcc_example"], cc: ["cc_example"], subject: "subject_example", to: ["to_example"]) // ForwardEmailOptions | forwardEmailOptions
// Forward email
EmailControllerAPI.forwardEmail(emailId: emailId, forwardEmailOptions: forwardEmailOptions) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID ID of email
forwardEmailOptions ForwardEmailOptions forwardEmailOptions

# Return type

Void (empty response body)

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getAttachmentMetaData

    open class func getAttachmentMetaData(attachmentId: String, emailId: UUID, completion: @escaping (_ data: AttachmentMetaData?, _ error: Error?) -> Void)

Get email attachment metadata

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

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let attachmentId = "attachmentId_example" // String | ID of attachment
let emailId = 987 // UUID | ID of email
// Get email attachment metadata
EmailControllerAPI.getAttachmentMetaData(attachmentId: attachmentId, emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
attachmentId String ID of attachment
emailId UUID ID of email

# Return type

AttachmentMetaData

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getAttachments

    open class func getAttachments(emailId: UUID, completion: @escaping (_ data: [AttachmentMetaData]?, _ error: Error?) -> Void)

Get all email attachment metadata

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

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email
// Get all email attachment metadata
EmailControllerAPI.getAttachments(emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID ID of email

# Return type

[AttachmentMetaData]

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getEmail

    open class func getEmail(emailId: UUID, decode: Bool? = nil, completion: @escaping (_ data: Email?, _ error: Error?) -> Void)

Get email content

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

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | emailId
let decode = true // Bool | 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)
// Get email content
EmailControllerAPI.getEmail(emailId: emailId, decode: decode) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID emailId
decode Bool 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

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getEmailContentMatch

    open class func getEmailContentMatch(emailId: UUID, contentMatchOptions: ContentMatchOptions, completion: @escaping (_ data: EmailContentMatchResult?, _ error: Error?) -> Void)

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/Pattern.html for more information of available patterns.

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email to match against
let contentMatchOptions = ContentMatchOptions(pattern: "pattern_example") // ContentMatchOptions | contentMatchOptions
// Get email content regex pattern match results. Runs regex against email body and returns match groups.
EmailControllerAPI.getEmailContentMatch(emailId: emailId, contentMatchOptions: contentMatchOptions) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

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

# Return type

EmailContentMatchResult

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getEmailHTML

    open class func getEmailHTML(emailId: UUID, decode: Bool? = nil, completion: @escaping (_ data: String?, _ error: Error?) -> Void)

Get email content as HTML

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

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | emailId
let decode = true // Bool | decode (optional) (default to false)
// Get email content as HTML
EmailControllerAPI.getEmailHTML(emailId: emailId, decode: decode) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID emailId
decode Bool decode [optional] [default to false]

# Return type

String

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getEmailsPaginated

    open class func getEmailsPaginated(inboxId: [UUID]? = nil, page: Int? = nil, size: Int? = nil, sort: Sort_getEmailsPaginated? = nil, unreadOnly: Bool? = nil, completion: @escaping (_ data: PageEmailProjection?, _ error: Error?) -> Void)

Get all emails

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

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let inboxId = [123] // [UUID] | Optional inbox ids to filter by. Can be repeated. By default will use all inboxes belonging to your account. (optional)
let page = 987 // Int | Optional page index in email list pagination (optional) (default to 0)
let size = 987 // Int | Optional page size in email list pagination (optional) (default to 20)
let sort = "sort_example" // String | Optional createdAt sort direction ASC or DESC (optional) (default to .asc)
let unreadOnly = true // Bool | 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)
// Get all emails
EmailControllerAPI.getEmailsPaginated(inboxId: inboxId, page: page, size: size, sort: sort, unreadOnly: unreadOnly) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
inboxId [UUID] Optional inbox ids to filter by. Can be repeated. By default will use all inboxes belonging to your account. [optional]
page Int Optional page index in email list pagination [optional] [default to 0]
size Int Optional page size in email list pagination [optional] [default to 20]
sort String Optional createdAt sort direction ASC or DESC [optional] [default to .asc]
unreadOnly Bool 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]

# Return type

PageEmailProjection

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getRawEmailContents

    open class func getRawEmailContents(emailId: UUID, completion: @escaping (_ data: String?, _ error: Error?) -> Void)

Get raw email string

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

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email
// Get raw email string
EmailControllerAPI.getRawEmailContents(emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID ID of email

# Return type

String

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getRawEmailJson

    open class func getRawEmailJson(emailId: UUID, completion: @escaping (_ data: RawEmailJson?, _ error: Error?) -> Void)

Get raw email in JSON

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

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email
// Get raw email in JSON
EmailControllerAPI.getRawEmailJson(emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID ID of email

# Return type

RawEmailJson

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# getUnreadEmailCount

    open class func getUnreadEmailCount(completion: @escaping (_ data: UnreadCount?, _ error: Error?) -> Void)

Get unread email count

Get number of emails unread

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
// Get unread email count
EmailControllerAPI.getUnreadEmailCount() { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

This endpoint does not need any parameter.

# Return type

UnreadCount

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]

# validateEmail

    open class func validateEmail(emailId: UUID, completion: @escaping (_ data: ValidationDto?, _ error: Error?) -> Void)

Validate email

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

# Example

// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
import mailslurp
let emailId = 987 // UUID | ID of email
// Validate email
EmailControllerAPI.validateEmail(emailId: emailId) { (response, error) in
    guard error == nil else {
        print(error)
        return
    }
    if (response) {
        dump(response)
    }
}

# Parameters

Name Type Description Notes
emailId UUID ID of email

# Return type

ValidationDto

# Authorization

API_KEY

# HTTP request headers

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

[Back to top] [Back to API list] [Back to Model list] [Back to README]