# mailslurp.api.InboxControllerApi

# Load the API package

import 'package:mailslurp/api.dart';

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

Method HTTP request Description
createInbox POST /inboxes Create an Inbox (email address)
deleteAllInboxes DELETE /inboxes Delete all inboxes
deleteInbox DELETE /inboxes/{inboxId} Delete inbox
getAllInboxes GET /inboxes/paginated List Inboxes Paginated
getEmails GET /inboxes/{inboxId}/emails Get emails in an Inbox
getInbox GET /inboxes/{inboxId} Get Inbox
getInboxEmailsPaginated GET /inboxes/{inboxId}/emails/paginated Get inbox emails paginated
getInboxSentEmails GET /inboxes/{inboxId}/sent Get Inbox Sent Emails
getInboxTags GET /inboxes/tags Get inbox tags
getInboxes GET /inboxes List Inboxes / Email Addresses
sendEmail POST /inboxes/{inboxId} Send Email
sendEmailAndConfirm POST /inboxes/{inboxId}/confirm Send email and return sent confirmation
setInboxFavourited PUT /inboxes/{inboxId}/favourite Set inbox favourited state
updateInbox PATCH /inboxes/{inboxId} Update Inbox

# createInbox

Inbox createInbox(description, emailAddress, expiresAt, favourite, name, tags)

Create an Inbox (email address)

Create a new inbox and with a randomized email address to send and receive from. Pass emailAddress parameter if you wish to use a specific email address. Creating an inbox is required before sending or receiving emails. If writing tests it is recommended that you create a new inbox during each test method so that it is unique and empty.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var description = description_example; // String | Optional description for an inbox.
var emailAddress = emailAddress_example; // String | Optional email address including domain you wish inbox to use (eg: test123@mydomain.com). Only supports domains that you have registered and verified with MailSlurp using dashboard or `createDomain` method.
var expiresAt = 2013-10-20T19:20:30+01:00; // DateTime | Optional expires at timestamp. If your plan supports this feature you can specify when an inbox should expire. If left empty inbox will exist permanently or expire when your plan dictates
var favourite = true; // bool | Is inbox favourited.
var name = name_example; // String | Optional name for an inbox.
var tags = []; // List&lt;String&gt; | Optional tags for an inbox. Can be used for searching and filtering inboxes.
try { 
    var result = api_instance.createInbox(description, emailAddress, expiresAt, favourite, name, tags);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->createInbox: $e\n");
}

# Parameters

Name Type Description Notes
description String Optional description for an inbox. [optional] [default to null]
emailAddress String Optional email address including domain you wish inbox to use (eg: test123@mydomain.com). Only supports domains that you have registered and verified with MailSlurp using dashboard or `createDomain` method. [optional] [default to null]
expiresAt DateTime Optional expires at timestamp. If your plan supports this feature you can specify when an inbox should expire. If left empty inbox will exist permanently or expire when your plan dictates [optional] [default to null]
favourite bool Is inbox favourited. [optional] [default to null]
name String Optional name for an inbox. [optional] [default to null]
tags List&lt;String> Optional tags for an inbox. Can be used for searching and filtering inboxes. [optional] [default to []]

# Return type

Inbox

# 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]

# deleteAllInboxes

deleteAllInboxes()

Delete all inboxes

Permanently delete all inboxes and associated email addresses. This will also delete all emails within the inboxes. Be careful as inboxes cannot be recovered once deleted. Note: deleting inboxes will not impact your usage limits. Monthly inbox creation limits are based on how many inboxes were created in the last 30 days, not how many inboxes you currently have.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
try { 
    api_instance.deleteAllInboxes();
} catch (e) {
    print("Exception when calling InboxControllerApi->deleteAllInboxes: $e\n");
}

# 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]

# deleteInbox

deleteInbox(inboxId)

Delete inbox

Permanently delete an inbox and associated email address aswell as all emails within the given inbox. This action cannot be undone. Note: deleting an inbox will not affect your account usage. Monthly inbox usage is based on how many inboxes you create within 30 days, not how many exist at time of request.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | inboxId
try { 
    api_instance.deleteInbox(inboxId);
} catch (e) {
    print("Exception when calling InboxControllerApi->deleteInbox: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String inboxId [default to null]

# 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]

# getAllInboxes

PageInboxProjection getAllInboxes(favourite, page, search, size, sort, tag)

List Inboxes Paginated

List inboxes in paginated form. Allows for page index, page size, and sort direction. Can also filter by favourited or email address like pattern.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var favourite = true; // bool | Optionally filter results for favourites only
var page = 56; // int | Optional page index in inbox list pagination
var search = search_example; // String | Optionally filter by search words partial matching ID, tags, name, and email address
var size = 56; // int | Optional page size in inbox list pagination
var sort = sort_example; // String | Optional createdAt sort direction ASC or DESC
var tag = tag_example; // String | Optionally filter by tags
try { 
    var result = api_instance.getAllInboxes(favourite, page, search, size, sort, tag);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getAllInboxes: $e\n");
}

# Parameters

Name Type Description Notes
favourite bool Optionally filter results for favourites only [optional] [default to false]
page int Optional page index in inbox list pagination [optional] [default to 0]
search String Optionally filter by search words partial matching ID, tags, name, and email address [optional] [default to null]
size int Optional page size in inbox list pagination [optional] [default to 20]
sort String Optional createdAt sort direction ASC or DESC [optional] [default to "ASC"]
tag String Optionally filter by tags [optional] [default to null]

# Return type

PageInboxProjection

# 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]

# getEmails

List<EmailPreview> getEmails(inboxId, limit, minCount, retryTimeout, since, sort)

Get emails in an Inbox

List emails that an inbox has received. Only emails that are sent to the inbox's email address will appear in the inbox. It may take several seconds for any email you send to an inbox's email address to appear in the inbox. To make this endpoint wait for a minimum number of emails use the minCount parameter. The server will retry the inbox database until the minCount is satisfied or the retryTimeout is reached

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | Id of inbox that emails belongs to
var limit = 56; // int | Limit the result set, ordered by received date time sort direction
var minCount = 789; // int | Minimum acceptable email count. Will cause request to hang (and retry) until minCount is satisfied or retryTimeout is reached.
var retryTimeout = 789; // int | Maximum milliseconds to spend retrying inbox database until minCount emails are returned
var since = 2013-10-20T19:20:30+01:00; // DateTime | Exclude emails received before this ISO 8601 date time
var sort = sort_example; // String | Sort the results by received date and direction ASC or DESC
try { 
    var result = api_instance.getEmails(inboxId, limit, minCount, retryTimeout, since, sort);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getEmails: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String Id of inbox that emails belongs to [default to null]
limit int Limit the result set, ordered by received date time sort direction [optional] [default to null]
minCount int Minimum acceptable email count. Will cause request to hang (and retry) until minCount is satisfied or retryTimeout is reached. [optional] [default to null]
retryTimeout int Maximum milliseconds to spend retrying inbox database until minCount emails are returned [optional] [default to null]
since DateTime Exclude emails received before this ISO 8601 date time [optional] [default to null]
sort String Sort the results by received date and direction ASC or DESC [optional] [default to null]

# Return type

List<EmailPreview>

# 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]

# getInbox

Inbox getInbox(inboxId)

Get Inbox

Returns an inbox's properties, including its email address and ID.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | inboxId
try { 
    var result = api_instance.getInbox(inboxId);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getInbox: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String inboxId [default to null]

# Return type

Inbox

# 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]

# getInboxEmailsPaginated

PageEmailPreview getInboxEmailsPaginated(inboxId, page, size, sort)

Get inbox emails paginated

Get a paginated list of emails in an inbox. Does not hold connections open.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | Id of inbox that emails belongs to
var page = 56; // int | Optional page index in inbox emails list pagination
var size = 56; // int | Optional page size in inbox emails list pagination
var sort = sort_example; // String | Optional createdAt sort direction ASC or DESC
try { 
    var result = api_instance.getInboxEmailsPaginated(inboxId, page, size, sort);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getInboxEmailsPaginated: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String Id of inbox that emails belongs to [default to null]
page int Optional page index in inbox emails list pagination [optional] [default to 0]
size int Optional page size in inbox emails list pagination [optional] [default to 20]
sort String Optional createdAt sort direction ASC or DESC [optional] [default to "ASC"]

# Return type

PageEmailPreview

# 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]

# getInboxSentEmails

PageSentEmailProjection getInboxSentEmails(inboxId, page, size, sort)

Get Inbox Sent Emails

Returns an inbox's sent email receipts. Call individual sent email endpoints for more details. Note for privacy reasons the full body of sent emails is never stored. An MD5 hash hex is available for comparison instead.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | inboxId
var page = 56; // int | Optional page index in inbox sent email list pagination
var size = 56; // int | Optional page size in inbox sent email list pagination
var sort = sort_example; // String | Optional createdAt sort direction ASC or DESC
try { 
    var result = api_instance.getInboxSentEmails(inboxId, page, size, sort);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getInboxSentEmails: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String inboxId [default to null]
page int Optional page index in inbox sent email list pagination [optional] [default to 0]
size int Optional page size in inbox sent email list pagination [optional] [default to 20]
sort String Optional createdAt sort direction ASC or DESC [optional] [default to "ASC"]

# Return type

PageSentEmailProjection

# 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]

# getInboxTags

List<String> getInboxTags()

Get inbox tags

Get all inbox tags

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
try { 
    var result = api_instance.getInboxTags();
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getInboxTags: $e\n");
}

# Parameters

This endpoint does not need any parameter.

# Return type

List<String>

# 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]

# getInboxes

List<Inbox> getInboxes()

List Inboxes / Email Addresses

List the inboxes you have created

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
try { 
    var result = api_instance.getInboxes();
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->getInboxes: $e\n");
}

# Parameters

This endpoint does not need any parameter.

# Return type

List<Inbox>

# 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]

# sendEmail

sendEmail(inboxId, sendEmailOptions)

Send Email

Send an email from an inbox's email address. The request body should contain the SendEmailOptions that include recipients, attachments, body etc. See SendEmailOptions for all available properties. Note the inboxId refers to the inbox's id not the inbox's email address. See https://www.mailslurp.com/guides/ for more information on how to send emails. This method does not return a sent email entity due to legacy reasons. To send and get a sent email as returned response use the sister method sendEmailAndConfirm.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | ID of the inbox you want to send the email from
var sendEmailOptions = SendEmailOptions(); // SendEmailOptions | Options for the email
try { 
    api_instance.sendEmail(inboxId, sendEmailOptions);
} catch (e) {
    print("Exception when calling InboxControllerApi->sendEmail: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String ID of the inbox you want to send the email from [default to null]
sendEmailOptions SendEmailOptions Options for the email [optional]

# 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]

# sendEmailAndConfirm

SentEmailDto sendEmailAndConfirm(inboxId, sendEmailOptions)

Send email and return sent confirmation

Sister method for standard sendEmail method with the benefit of returning a SentEmail entity confirming the successful sending of the email with link the the sent object created for it.

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | ID of the inbox you want to send the email from
var sendEmailOptions = SendEmailOptions(); // SendEmailOptions | Options for the email
try { 
    var result = api_instance.sendEmailAndConfirm(inboxId, sendEmailOptions);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->sendEmailAndConfirm: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String ID of the inbox you want to send the email from [default to null]
sendEmailOptions SendEmailOptions Options for the email [optional]

# Return type

SentEmailDto

# 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]

# setInboxFavourited

Inbox setInboxFavourited(inboxId, setInboxFavouritedOptions)

Set inbox favourited state

Set and return new favourite state for an inbox

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | inboxId
var setInboxFavouritedOptions = SetInboxFavouritedOptions(); // SetInboxFavouritedOptions | setInboxFavouritedOptions
try { 
    var result = api_instance.setInboxFavourited(inboxId, setInboxFavouritedOptions);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->setInboxFavourited: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String inboxId [default to null]
setInboxFavouritedOptions SetInboxFavouritedOptions setInboxFavouritedOptions

# Return type

Inbox

# 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]

# updateInbox

Inbox updateInbox(inboxId, updateInboxOptions)

Update Inbox

Update editable fields on an inbox

# Example

import 'package:mailslurp/api.dart';
// TODO Configure API key authorization: API_KEY
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKey = 'YOUR_API_KEY';
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
//defaultApiClient.getAuthentication<ApiKeyAuth>('API_KEY').apiKeyPrefix = 'Bearer';
var api_instance = InboxControllerApi();
var inboxId = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | inboxId
var updateInboxOptions = UpdateInboxOptions(); // UpdateInboxOptions | updateInboxOptions
try { 
    var result = api_instance.updateInbox(inboxId, updateInboxOptions);
    print(result);
} catch (e) {
    print("Exception when calling InboxControllerApi->updateInbox: $e\n");
}

# Parameters

Name Type Description Notes
inboxId String inboxId [default to null]
updateInboxOptions UpdateInboxOptions updateInboxOptions

# Return type

Inbox

# 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]