gogol-gmail-0.0.1: Google Gmail SDK.

Copyright(c) 2015 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.Google.Gmail.Types

Contents

Description

 

Synopsis

Service Configuration

gmailService :: Service Source

Default request referring to version v1 of the Gmail API. This contains the host and root path used as a starting point for constructing service requests.

OAuth Scopes

gmailAllScope :: OAuthScope Source

View and manage your mail

gmailModifyScope :: OAuthScope Source

View and modify but not delete your email

gmailLabelsScope :: OAuthScope Source

Manage mailbox labels

gmailSendScope :: OAuthScope Source

Send email on your behalf

gmailInsertScope :: OAuthScope Source

Insert mail into your mailbox

gmailComposeScope :: OAuthScope Source

Manage drafts and send emails

gmailReadonlyScope :: OAuthScope Source

View your emails messages and settings

UsersMessagesGetFormat

ModifyThreadRequest

modifyThreadRequest :: ModifyThreadRequest Source

Creates a value of ModifyThreadRequest with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mtrRemoveLabelIds :: Lens' ModifyThreadRequest [Text] Source

A list of IDs of labels to remove from this thread.

mtrAddLabelIds :: Lens' ModifyThreadRequest [Text] Source

A list of IDs of labels to add to this thread.

ModifyMessageRequest

modifyMessageRequest :: ModifyMessageRequest Source

Creates a value of ModifyMessageRequest with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mmrRemoveLabelIds :: Lens' ModifyMessageRequest [Text] Source

A list IDs of labels to remove from this message.

mmrAddLabelIds :: Lens' ModifyMessageRequest [Text] Source

A list of IDs of labels to add to this message.

History

data History Source

A record of a change to the user's mailbox. Each history change may affect multiple messages in multiple ways.

See: history smart constructor.

history :: History Source

Creates a value of History with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

hLabelsRemoved :: Lens' History [HistoryLabelRemoved] Source

Labels removed from messages in this history record.

hMessagesDeleted :: Lens' History [HistoryMessageDeleted] Source

Messages deleted (not Trashed) from the mailbox in this history record.

hMessagesAdded :: Lens' History [HistoryMessageAdded] Source

Messages added to the mailbox in this history record.

hLabelsAdded :: Lens' History [HistoryLabelAdded] Source

Labels added to messages in this history record.

hId :: Lens' History (Maybe Word64) Source

The mailbox sequence ID.

hMessages :: Lens' History [Message] Source

List of messages changed in this history record. The fields for specific change types, such as messagesAdded may duplicate messages in this field. We recommend using the specific change-type fields instead of this.

ProFile

data ProFile Source

Profile for a Gmail user.

See: proFile smart constructor.

proFile :: ProFile Source

Creates a value of ProFile with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pfMessagesTotal :: Lens' ProFile (Maybe Int32) Source

The total number of messages in the mailbox.

pfThreadsTotal :: Lens' ProFile (Maybe Int32) Source

The total number of threads in the mailbox.

pfHistoryId :: Lens' ProFile (Maybe Word64) Source

The ID of the mailbox's current history record.

pfEmailAddress :: Lens' ProFile (Maybe Text) Source

The user's email address.

MessagePartHeader

messagePartHeader :: MessagePartHeader Source

Creates a value of MessagePartHeader with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mphValue :: Lens' MessagePartHeader (Maybe Text) Source

The value of the header after the : separator. For example, someuser'example.com.

mphName :: Lens' MessagePartHeader (Maybe Text) Source

The name of the header before the : separator. For example, To.

ListHistoryResponse

listHistoryResponse :: ListHistoryResponse Source

Creates a value of ListHistoryResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

lhrNextPageToken :: Lens' ListHistoryResponse (Maybe Text) Source

Page token to retrieve the next page of results in the list.

lhrHistory :: Lens' ListHistoryResponse [History] Source

List of history records. Any messages contained in the response will typically only have id and threadId fields populated.

lhrHistoryId :: Lens' ListHistoryResponse (Maybe Word64) Source

The ID of the mailbox's current history record.

LabelType

data LabelType Source

The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.

Constructors

System
system
User
user

UsersDraftsGetFormat

UsersMessagesImportInternalDateSource

LabelMessageListVisibility

ListThreadsResponse

listThreadsResponse :: ListThreadsResponse Source

Creates a value of ListThreadsResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

ltrNextPageToken :: Lens' ListThreadsResponse (Maybe Text) Source

Page token to retrieve the next page of results in the list.

ltrResultSizeEstimate :: Lens' ListThreadsResponse (Maybe Word32) Source

Estimated total number of results.

MessagePart

messagePart :: MessagePart Source

Creates a value of MessagePart with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mpParts :: Lens' MessagePart [MessagePart] Source

The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521.

mpBody :: Lens' MessagePart (Maybe MessagePartBody) Source

The message part body for this part, which may be empty for container MIME message parts.

mpMimeType :: Lens' MessagePart (Maybe Text) Source

The MIME type of the message part.

mpHeaders :: Lens' MessagePart [MessagePartHeader] Source

List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject.

mpPartId :: Lens' MessagePart (Maybe Text) Source

The immutable ID of the message part.

mpFilename :: Lens' MessagePart (Maybe Text) Source

The filename of the attachment. Only present if this message part represents an attachment.

HistoryLabelAdded

historyLabelAdded :: HistoryLabelAdded Source

Creates a value of HistoryLabelAdded with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

hlaLabelIds :: Lens' HistoryLabelAdded [Text] Source

Label IDs added to the message.

ListLabelsResponse

listLabelsResponse :: ListLabelsResponse Source

Creates a value of ListLabelsResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

LabelLabelListVisibility

HistoryMessageDeleted

historyMessageDeleted :: HistoryMessageDeleted Source

Creates a value of HistoryMessageDeleted with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

MessagePartBody

messagePartBody :: MessagePartBody Source

Creates a value of MessagePartBody with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mpbSize :: Lens' MessagePartBody (Maybe Int32) Source

Total number of bytes in the body of the message part.

mpbData :: Lens' MessagePartBody (Maybe Word8) Source

The body data of a MIME message part. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment.

mpbAttachmentId :: Lens' MessagePartBody (Maybe Text) Source

When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field.

ListDraftsResponse

listDraftsResponse :: ListDraftsResponse Source

Creates a value of ListDraftsResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

ldrNextPageToken :: Lens' ListDraftsResponse (Maybe Text) Source

Token to retrieve the next page of results in the list.

ldrResultSizeEstimate :: Lens' ListDraftsResponse (Maybe Word32) Source

Estimated total number of results.

WatchResponse

watchResponse :: WatchResponse Source

Creates a value of WatchResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

wrExpiration :: Lens' WatchResponse (Maybe Int64) Source

When Gmail will stop sending notifications for mailbox updates (epoch millis). Call watch again before this time to renew the watch.

wrHistoryId :: Lens' WatchResponse (Maybe Word64) Source

The ID of the mailbox's current history record.

UsersThreadsGetFormat

Draft

data Draft Source

A draft email in the user's mailbox.

See: draft smart constructor.

draft :: Draft Source

Creates a value of Draft with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

dId :: Lens' Draft (Maybe Text) Source

The immutable ID of the draft.

dMessage :: Lens' Draft (Maybe Message) Source

The message content of the draft.

WatchRequest

data WatchRequest Source

Set up or update a new push notification watch on this user's mailbox.

See: watchRequest smart constructor.

watchRequest :: WatchRequest Source

Creates a value of WatchRequest with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

wrLabelFilterAction :: Lens' WatchRequest (Maybe WatchRequestLabelFilterAction) Source

Filtering behavior of labelIds list specified.

wrTopicName :: Lens' WatchRequest (Maybe Text) Source

A fully qualified Google Cloud Pub/Sub API topic name to publish the events to. This topic name **must** already exist in Cloud Pub/Sub and you **must** have already granted gmail "publish" permission on it. For example, "projects/my-project-identifier/topics/my-topic-name" (using the new Cloud Pub/Sub "v1beta2" topic naming format). Note that the "my-project-identifier" portion must exactly match your Google developer project id (the one executing this watch request).

wrLabelIds :: Lens' WatchRequest [Text] Source

List of label_ids to restrict notifications about. By default, if unspecified, all changes are pushed out. If specified then dictates which labels are required for a push notification to be generated.

WatchRequestLabelFilterAction

Message

message :: Message Source

Creates a value of Message with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

mRaw :: Lens' Message (Maybe Word8) Source

The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied.

mSnippet :: Lens' Message (Maybe Text) Source

A short part of the message text.

mSizeEstimate :: Lens' Message (Maybe Int32) Source

Estimated size in bytes of the message.

mPayload :: Lens' Message (Maybe MessagePart) Source

The parsed email structure in the message parts.

mHistoryId :: Lens' Message (Maybe Word64) Source

The ID of the last history record that modified this message.

mId :: Lens' Message (Maybe Text) Source

The immutable ID of the message.

mLabelIds :: Lens' Message [Text] Source

List of IDs of labels applied to this message.

mThreadId :: Lens' Message (Maybe Text) Source

The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: - The requested threadId must be specified on the Message or Draft.Message you supply with your request. - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. - The Subject headers must match.

mInternalDate :: Lens' Message (Maybe Int64) Source

The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header.

UsersMessagesInsertInternalDateSource

HistoryLabelRemoved

historyLabelRemoved :: HistoryLabelRemoved Source

Creates a value of HistoryLabelRemoved with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

hlrLabelIds :: Lens' HistoryLabelRemoved [Text] Source

Label IDs removed from the message.

Thread

data Thread Source

A collection of messages representing a conversation.

See: thread smart constructor.

thread :: Thread Source

Creates a value of Thread with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

tSnippet :: Lens' Thread (Maybe Text) Source

A short part of the message text.

tHistoryId :: Lens' Thread (Maybe Word64) Source

The ID of the last history record that modified this thread.

tId :: Lens' Thread (Maybe Text) Source

The unique ID of the thread.

tMessages :: Lens' Thread [Message] Source

The list of messages in the thread.

Label

data Label Source

Labels are used to categorize messages and threads within the user's mailbox.

See: label smart constructor.

label :: Label Source

Creates a value of Label with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

lThreadsUnread :: Lens' Label (Maybe Int32) Source

The number of unread threads with the label.

lMessageListVisibility :: Lens' Label (Maybe LabelMessageListVisibility) Source

The visibility of the label in the message list in the Gmail web interface.

lMessagesTotal :: Lens' Label (Maybe Int32) Source

The total number of messages with the label.

lMessagesUnread :: Lens' Label (Maybe Int32) Source

The number of unread messages with the label.

lName :: Lens' Label (Maybe Text) Source

The display name of the label.

lThreadsTotal :: Lens' Label (Maybe Int32) Source

The total number of threads with the label.

lLabelListVisibility :: Lens' Label (Maybe LabelLabelListVisibility) Source

The visibility of the label in the label list in the Gmail web interface.

lId :: Lens' Label (Maybe Text) Source

The immutable ID of the label.

lType :: Lens' Label (Maybe LabelType) Source

The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.

ListMessagesResponse

listMessagesResponse :: ListMessagesResponse Source

Creates a value of ListMessagesResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

lmrNextPageToken :: Lens' ListMessagesResponse (Maybe Text) Source

Token to retrieve the next page of results in the list.

lmrResultSizeEstimate :: Lens' ListMessagesResponse (Maybe Word32) Source

Estimated total number of results.

HistoryMessageAdded

historyMessageAdded :: HistoryMessageAdded Source

Creates a value of HistoryMessageAdded with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired: