Documentation
¶
Overview ¶
Package tem provides methods and message types of the tem v1alpha1 API.
Index ¶
- Constants
- type API
- func (s *API) CancelEmail(req *CancelEmailRequest, opts ...scw.RequestOption) (*Email, error)
- func (s *API) CheckDomain(req *CheckDomainRequest, opts ...scw.RequestOption) (*Domain, error)
- func (s *API) CreateDomain(req *CreateDomainRequest, opts ...scw.RequestOption) (*Domain, error)
- func (s *API) CreateEmail(req *CreateEmailRequest, opts ...scw.RequestOption) (*CreateEmailResponse, error)
- func (s *API) GetDomain(req *GetDomainRequest, opts ...scw.RequestOption) (*Domain, error)
- func (s *API) GetDomainLastStatus(req *GetDomainLastStatusRequest, opts ...scw.RequestOption) (*DomainLastStatus, error)
- func (s *API) GetEmail(req *GetEmailRequest, opts ...scw.RequestOption) (*Email, error)
- func (s *API) GetStatistics(req *GetStatisticsRequest, opts ...scw.RequestOption) (*Statistics, error)
- func (s *API) ListDomains(req *ListDomainsRequest, opts ...scw.RequestOption) (*ListDomainsResponse, error)
- func (s *API) ListEmails(req *ListEmailsRequest, opts ...scw.RequestOption) (*ListEmailsResponse, error)
- func (s *API) Regions() []scw.Region
- func (s *API) RevokeDomain(req *RevokeDomainRequest, opts ...scw.RequestOption) (*Domain, error)
- func (s *API) WaitForDomain(req *WaitForDomainRequest, opts ...scw.RequestOption) (*Domain, error)
- type CancelEmailRequest
- type CheckDomainRequest
- type CreateDomainRequest
- type CreateEmailRequest
- type CreateEmailRequestAddress
- type CreateEmailRequestAttachment
- type CreateEmailRequestHeader
- type CreateEmailResponse
- type Domain
- type DomainLastStatus
- type DomainLastStatusDkimRecord
- type DomainLastStatusDmarcRecord
- type DomainLastStatusRecordStatus
- type DomainLastStatusSpfRecord
- type DomainRecords
- type DomainRecordsDMARC
- type DomainReputation
- type DomainReputationStatus
- type DomainStatistics
- type DomainStatus
- type Email
- type EmailFlag
- type EmailRcptType
- type EmailStatus
- type EmailTry
- type GetDomainLastStatusRequest
- type GetDomainRequest
- type GetEmailRequest
- type GetStatisticsRequest
- type ListDomainsRequest
- type ListDomainsResponse
- type ListEmailsRequest
- type ListEmailsRequestOrderBy
- type ListEmailsResponse
- type RevokeDomainRequest
- type Statistics
- type WaitForDomainRequest
Constants ¶
const ( // If unspecified, the status of the domain's record is unknown by default. DomainLastStatusRecordStatusUnknownRecordStatus = DomainLastStatusRecordStatus("unknown_record_status") // The record is valid. DomainLastStatusRecordStatusValid = DomainLastStatusRecordStatus("valid") // The record is invalid. DomainLastStatusRecordStatusInvalid = DomainLastStatusRecordStatus("invalid") // The record was not found. DomainLastStatusRecordStatusNotFound = DomainLastStatusRecordStatus("not_found") )
const ( // If unspecified, the status of the domain's reputation is unknown by default. DomainReputationStatusUnknownStatus = DomainReputationStatus("unknown_status") // The domain has an excellent reputation. DomainReputationStatusExcellent = DomainReputationStatus("excellent") // The domain has a good reputation. DomainReputationStatusGood = DomainReputationStatus("good") // The domain has an average reputation. DomainReputationStatusAverage = DomainReputationStatus("average") // The domain has a bad reputation. DomainReputationStatusBad = DomainReputationStatus("bad") )
const ( // If unspecified, the status of the domain is unknown by default. DomainStatusUnknown = DomainStatus("unknown") // The domain is checked. DomainStatusChecked = DomainStatus("checked") // The domain is unchecked. DomainStatusUnchecked = DomainStatus("unchecked") // The domain is invalid. DomainStatusInvalid = DomainStatus("invalid") // The domain is locked. DomainStatusLocked = DomainStatus("locked") // The domain is revoked. DomainStatusRevoked = DomainStatus("revoked") // The domain is pending, waiting to be checked. DomainStatusPending = DomainStatus("pending") )
const ( // If unspecified, the flag type is unknown by default. EmailFlagUnknownFlag = EmailFlag("unknown_flag") // Refers to a non critical error received while sending the email(s). Soft bounced emails are retried. EmailFlagSoftBounce = EmailFlag("soft_bounce") // Refers to a critical error that happened while sending the email(s). EmailFlagHardBounce = EmailFlag("hard_bounce") // Refers to an email considered as spam. EmailFlagSpam = EmailFlag("spam") // Refers to an undelivered email because the recipient mailbox is full. EmailFlagMailboxFull = EmailFlag("mailbox_full") // Refers to an undelivered email because the recipient mailbox does not exist. EmailFlagMailboxNotFound = EmailFlag("mailbox_not_found") // Refers to an email slightly delayed by the recipient to ensure that Scaleway is not sending spam. EmailFlagGreylisted = EmailFlag("greylisted") // Refers to an email with a `send-before` tag to indicate the maximum time limit for the email to be sent. EmailFlagSendBeforeExpiration = EmailFlag("send_before_expiration") )
const ( // If unspecified, the recipient type is unknown by default. EmailRcptTypeUnknownRcptType = EmailRcptType("unknown_rcpt_type") // Primary recipient. EmailRcptTypeTo = EmailRcptType("to") // Carbon copy recipient. EmailRcptTypeCc = EmailRcptType("cc") // Blind carbon copy recipient. EmailRcptTypeBcc = EmailRcptType("bcc") )
const ( // If unspecified, the status of the email is unknown by default. EmailStatusUnknown = EmailStatus("unknown") // The email is new. EmailStatusNew = EmailStatus("new") // The email is in the process of being sent. EmailStatusSending = EmailStatus("sending") // The email was sent. EmailStatusSent = EmailStatus("sent") // The sending of the email failed. EmailStatusFailed = EmailStatus("failed") // The sending of the email was canceled. EmailStatusCanceled = EmailStatus("canceled") )
const ( // Order by creation date (descending chronological order). ListEmailsRequestOrderByCreatedAtDesc = ListEmailsRequestOrderBy("created_at_desc") // Order by creation date (ascending chronological order). ListEmailsRequestOrderByCreatedAtAsc = ListEmailsRequestOrderBy("created_at_asc") // Order by last update date (descending chronological order). ListEmailsRequestOrderByUpdatedAtDesc = ListEmailsRequestOrderBy("updated_at_desc") // Order by last update date (ascending chronological order). ListEmailsRequestOrderByUpdatedAtAsc = ListEmailsRequestOrderBy("updated_at_asc") // Order by status (descending alphabetical order). ListEmailsRequestOrderByStatusDesc = ListEmailsRequestOrderBy("status_desc") // Order by status (ascending alphabetical order). ListEmailsRequestOrderByStatusAsc = ListEmailsRequestOrderBy("status_asc") // Order by mail_from (descending alphabetical order). ListEmailsRequestOrderByMailFromDesc = ListEmailsRequestOrderBy("mail_from_desc") // Order by mail_from (ascending alphabetical order). ListEmailsRequestOrderByMailFromAsc = ListEmailsRequestOrderBy("mail_from_asc") // Order by mail recipient (descending alphabetical order). ListEmailsRequestOrderByMailRcptDesc = ListEmailsRequestOrderBy("mail_rcpt_desc") // Order by mail recipient (ascending alphabetical order). ListEmailsRequestOrderByMailRcptAsc = ListEmailsRequestOrderBy("mail_rcpt_asc") // Order by subject (descending alphabetical order). ListEmailsRequestOrderBySubjectDesc = ListEmailsRequestOrderBy("subject_desc") // Order by subject (ascending alphabetical order). ListEmailsRequestOrderBySubjectAsc = ListEmailsRequestOrderBy("subject_asc") )
const ( SMTPHost = "smtp.tem.scw.cloud" SMTPPortUnsecure = 25 SMTPPort = 587 SMTPPortAlternative = 2587 SMTPSPort = 465 SMTPSPortAlternative = 2465 MXBlackhole = "blackhole.scw-tem.cloud." )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
type API struct {
// contains filtered or unexported fields
}
func (*API) CancelEmail ¶
func (s *API) CancelEmail(req *CancelEmailRequest, opts ...scw.RequestOption) (*Email, error)
CancelEmail: You can cancel the sending of an email if it has not been sent yet. You must specify the `region` and the `email_id` of the email you want to cancel.
func (*API) CheckDomain ¶
func (s *API) CheckDomain(req *CheckDomainRequest, opts ...scw.RequestOption) (*Domain, error)
CheckDomain: Perform an immediate DNS check of a domain using the `region` and `domain_id` parameters.
func (*API) CreateDomain ¶
func (s *API) CreateDomain(req *CreateDomainRequest, opts ...scw.RequestOption) (*Domain, error)
CreateDomain: You must specify the `region`, `project_id` and `domain_name` to register a domain in a specific Project.
func (*API) CreateEmail ¶
func (s *API) CreateEmail(req *CreateEmailRequest, opts ...scw.RequestOption) (*CreateEmailResponse, error)
CreateEmail: You must specify the `region`, the sender and the recipient's information and the `project_id` to send an email from a checked domain. The subject of the email must contain at least 6 characters.
func (*API) GetDomain ¶
func (s *API) GetDomain(req *GetDomainRequest, opts ...scw.RequestOption) (*Domain, error)
GetDomain: Retrieve information about a specific domain using the `region` and `domain_id` parameters. Monitor your domain's reputation and improve **average** and **bad** reputation statuses, using your domain's **Email activity** tab on the [Scaleway console](https://console.scaleway.com/transactional-email/domains) to get a more detailed report. Check out our [dedicated documentation](https://www.scaleway.com/en/docs/managed-services/transactional-email/reference-content/understanding-tem-reputation-score/) to improve your domain's reputation.
func (*API) GetDomainLastStatus ¶
func (s *API) GetDomainLastStatus(req *GetDomainLastStatusRequest, opts ...scw.RequestOption) (*DomainLastStatus, error)
GetDomainLastStatus: Display SPF and DKIM records status and potential errors, including the found records to make debugging easier.
func (*API) GetEmail ¶
func (s *API) GetEmail(req *GetEmailRequest, opts ...scw.RequestOption) (*Email, error)
GetEmail: Retrieve information about a specific email using the `email_id` and `region` parameters.
func (*API) GetStatistics ¶
func (s *API) GetStatistics(req *GetStatisticsRequest, opts ...scw.RequestOption) (*Statistics, error)
GetStatistics: Get information on your emails' statuses.
func (*API) ListDomains ¶
func (s *API) ListDomains(req *ListDomainsRequest, opts ...scw.RequestOption) (*ListDomainsResponse, error)
ListDomains: Retrieve domains in a specific Project or in a specific Organization using the `region` parameter.
func (*API) ListEmails ¶
func (s *API) ListEmails(req *ListEmailsRequest, opts ...scw.RequestOption) (*ListEmailsResponse, error)
ListEmails: Retrieve the list of emails sent from a specific domain or for a specific Project or Organization. You must specify the `region`.
func (*API) RevokeDomain ¶
func (s *API) RevokeDomain(req *RevokeDomainRequest, opts ...scw.RequestOption) (*Domain, error)
RevokeDomain: You must specify the domain you want to delete by the `region` and `domain_id`. Deleting a domain is permanent and cannot be undone.
func (*API) WaitForDomain ¶
func (s *API) WaitForDomain(req *WaitForDomainRequest, opts ...scw.RequestOption) (*Domain, error)
WaitForDomain wait for the domain to be in a "terminal state" before returning. This function can be used to wait for a domain to be checked for example.
type CancelEmailRequest ¶
type CancelEmailRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// EmailID: ID of the email to cancel.
EmailID string `json:"-"`
}
CancelEmailRequest: cancel email request.
type CheckDomainRequest ¶
type CheckDomainRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DomainID: ID of the domain to check.
DomainID string `json:"-"`
}
CheckDomainRequest: check domain request.
type CreateDomainRequest ¶
type CreateDomainRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// ProjectID: ID of the project to which the domain belongs.
ProjectID string `json:"project_id"`
// DomainName: fully qualified domain dame.
DomainName string `json:"domain_name"`
// AcceptTos: accept Scaleway's Terms of Service.
AcceptTos bool `json:"accept_tos"`
}
CreateDomainRequest: create domain request.
type CreateEmailRequest ¶
type CreateEmailRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// From: sender information. Must be from a checked domain declared in the Project.
From *CreateEmailRequestAddress `json:"from,omitempty"`
// To: an array of the primary recipient's information.
To []*CreateEmailRequestAddress `json:"to"`
// Cc: an array of the carbon copy recipient's information.
Cc []*CreateEmailRequestAddress `json:"cc"`
// Bcc: an array of the blind carbon copy recipient's information.
Bcc []*CreateEmailRequestAddress `json:"bcc"`
// Subject: subject of the email.
Subject string `json:"subject"`
// Text: text content.
Text string `json:"text"`
// HTML: HTML content.
HTML string `json:"html"`
// ProjectID: ID of the Project in which to create the email.
ProjectID string `json:"project_id"`
// Attachments: array of attachments.
Attachments []*CreateEmailRequestAttachment `json:"attachments"`
// SendBefore: maximum date to deliver the email.
SendBefore *time.Time `json:"send_before,omitempty"`
// AdditionalHeaders: array of additional headers as key-value.
AdditionalHeaders []*CreateEmailRequestHeader `json:"additional_headers"`
}
CreateEmailRequest: create email request.
type CreateEmailRequestAddress ¶
type CreateEmailRequestAddress struct {
// Email: email address.
Email string `json:"email"`
// Name: (Optional) Name displayed.
Name *string `json:"name"`
}
CreateEmailRequestAddress: create email request address.
type CreateEmailRequestAttachment ¶
type CreateEmailRequestAttachment struct {
// Name: filename of the attachment.
Name string `json:"name"`
// Type: mIME type of the attachment.
Type string `json:"type"`
// Content: content of the attachment encoded in base64.
Content []byte `json:"content"`
}
CreateEmailRequestAttachment: create email request attachment.
type CreateEmailRequestHeader ¶
type CreateEmailRequestHeader struct {
// Key: email header key.
Key string `json:"key"`
// Value: email header value.
Value string `json:"value"`
}
CreateEmailRequestHeader: create email request header.
type CreateEmailResponse ¶
type CreateEmailResponse struct {
// Emails: single page of emails matching the requested criteria.
Emails []*Email `json:"emails"`
}
CreateEmailResponse: create email response.
type Domain ¶
type Domain struct {
// ID: ID of the domain.
ID string `json:"id"`
// OrganizationID: ID of the domain's Organization.
OrganizationID string `json:"organization_id"`
// ProjectID: ID of the domain's Project.
ProjectID string `json:"project_id"`
// Name: domain name (example.com).
Name string `json:"name"`
// Status: status of the domain.
// Default value: unknown
Status DomainStatus `json:"status"`
// CreatedAt: date and time of domain creation.
CreatedAt *time.Time `json:"created_at"`
// NextCheckAt: date and time of the next scheduled check.
NextCheckAt *time.Time `json:"next_check_at"`
// LastValidAt: date and time the domain was last valid.
LastValidAt *time.Time `json:"last_valid_at"`
// RevokedAt: date and time of the domain's deletion.
RevokedAt *time.Time `json:"revoked_at"`
// Deprecated: LastError: error message returned if the last check failed.
LastError *string `json:"last_error,omitempty"`
// SpfConfig: snippet of the SPF record to register in the DNS zone.
SpfConfig string `json:"spf_config"`
// DkimConfig: dKIM public key to record in the DNS zone.
DkimConfig string `json:"dkim_config"`
// Statistics: domain's statistics.
Statistics *DomainStatistics `json:"statistics"`
// Reputation: the domain's reputation is available when your domain is checked and has sent enough emails.
Reputation *DomainReputation `json:"reputation"`
// Records: list of records to configure to validate a domain.
Records *DomainRecords `json:"records"`
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"region"`
}
Domain: domain.
type DomainLastStatus ¶
type DomainLastStatus struct {
// DomainID: the ID of the domain.
DomainID string `json:"domain_id"`
// DomainName: the domain name (example.com).
DomainName string `json:"domain_name"`
// SpfRecord: the SPF record verification data.
SpfRecord *DomainLastStatusSpfRecord `json:"spf_record"`
// DkimRecord: the DKIM record verification data.
DkimRecord *DomainLastStatusDkimRecord `json:"dkim_record"`
// DmarcRecord: the DMARC record verification data.
DmarcRecord *DomainLastStatusDmarcRecord `json:"dmarc_record"`
}
DomainLastStatus: domain last status.
type DomainLastStatusDkimRecord ¶
type DomainLastStatusDkimRecord struct {
// Status: status of the DKIM record's configuration.
// Default value: unknown_record_status
Status DomainLastStatusRecordStatus `json:"status"`
// LastValidAt: time and date the DKIM record was last valid.
LastValidAt *time.Time `json:"last_valid_at"`
// Error: an error text displays in case the record is not valid.
Error *string `json:"error"`
}
DomainLastStatusDkimRecord: domain last status dkim record.
type DomainLastStatusDmarcRecord ¶
type DomainLastStatusDmarcRecord struct {
// Status: status of the DMARC record's configuration.
// Default value: unknown_record_status
Status DomainLastStatusRecordStatus `json:"status"`
// LastValidAt: time and date the DMARC record was last valid.
LastValidAt *time.Time `json:"last_valid_at"`
// Error: an error text displays in case the record is not valid.
Error *string `json:"error"`
}
DomainLastStatusDmarcRecord: domain last status dmarc record.
type DomainLastStatusRecordStatus ¶
type DomainLastStatusRecordStatus string
func (DomainLastStatusRecordStatus) MarshalJSON ¶
func (enum DomainLastStatusRecordStatus) MarshalJSON() ([]byte, error)
func (DomainLastStatusRecordStatus) String ¶
func (enum DomainLastStatusRecordStatus) String() string
func (*DomainLastStatusRecordStatus) UnmarshalJSON ¶
func (enum *DomainLastStatusRecordStatus) UnmarshalJSON(data []byte) error
type DomainLastStatusSpfRecord ¶
type DomainLastStatusSpfRecord struct {
// Status: status of the SPF record's configuration.
// Default value: unknown_record_status
Status DomainLastStatusRecordStatus `json:"status"`
// LastValidAt: time and date the SPF record was last valid.
LastValidAt *time.Time `json:"last_valid_at"`
// Error: an error text displays in case the record is not valid.
Error *string `json:"error"`
}
DomainLastStatusSpfRecord: domain last status spf record.
type DomainRecords ¶
type DomainRecords struct {
// Dmarc: dMARC TXT record specification.
Dmarc *DomainRecordsDMARC `json:"dmarc"`
}
DomainRecords: domain records.
type DomainRecordsDMARC ¶
type DomainRecordsDMARC struct {
// Name: name of the DMARC TXT record.
Name string `json:"name"`
// Value: value of the DMARC TXT record.
Value string `json:"value"`
}
DomainRecordsDMARC: domain records dmarc.
type DomainReputation ¶
type DomainReputation struct {
// Status: status of your domain's reputation.
// Default value: unknown_status
Status DomainReputationStatus `json:"status"`
// Score: a range from 0 to 100 that determines your domain's reputation score. A score of `0` means a bad domain reputation and a score of `100` means an excellent domain reputation.
Score uint32 `json:"score"`
// ScoredAt: time and date the score was calculated.
ScoredAt *time.Time `json:"scored_at"`
// PreviousScore: the previously-calculated domain's reputation score.
PreviousScore *uint32 `json:"previous_score"`
// PreviousScoredAt: time and date the previous reputation score was calculated.
PreviousScoredAt *time.Time `json:"previous_scored_at"`
}
DomainReputation: domain reputation.
type DomainReputationStatus ¶
type DomainReputationStatus string
func (DomainReputationStatus) MarshalJSON ¶
func (enum DomainReputationStatus) MarshalJSON() ([]byte, error)
func (DomainReputationStatus) String ¶
func (enum DomainReputationStatus) String() string
func (*DomainReputationStatus) UnmarshalJSON ¶
func (enum *DomainReputationStatus) UnmarshalJSON(data []byte) error
type DomainStatistics ¶
type DomainStatistics struct {
TotalCount uint32 `json:"total_count"`
SentCount uint32 `json:"sent_count"`
FailedCount uint32 `json:"failed_count"`
CanceledCount uint32 `json:"canceled_count"`
}
DomainStatistics: domain statistics.
type DomainStatus ¶
type DomainStatus string
func (DomainStatus) MarshalJSON ¶
func (enum DomainStatus) MarshalJSON() ([]byte, error)
func (DomainStatus) String ¶
func (enum DomainStatus) String() string
func (*DomainStatus) UnmarshalJSON ¶
func (enum *DomainStatus) UnmarshalJSON(data []byte) error
type Email ¶
type Email struct {
// ID: technical ID of the email.
ID string `json:"id"`
// MessageID: message ID of the email.
MessageID string `json:"message_id"`
// ProjectID: ID of the Project to which the email belongs.
ProjectID string `json:"project_id"`
// MailFrom: email address of the sender.
MailFrom string `json:"mail_from"`
// Deprecated: RcptTo: email address of the recipient.
RcptTo *string `json:"rcpt_to,omitempty"`
// MailRcpt: email address of the recipient.
MailRcpt string `json:"mail_rcpt"`
// RcptType: type of recipient.
// Default value: unknown_rcpt_type
RcptType EmailRcptType `json:"rcpt_type"`
// Subject: subject of the email.
Subject string `json:"subject"`
// CreatedAt: creation date of the email object.
CreatedAt *time.Time `json:"created_at"`
// UpdatedAt: last update of the email object.
UpdatedAt *time.Time `json:"updated_at"`
// Status: status of the email.
// Default value: unknown
Status EmailStatus `json:"status"`
// StatusDetails: additional status information.
StatusDetails *string `json:"status_details"`
// TryCount: number of attempts to send the email.
TryCount uint32 `json:"try_count"`
// LastTries: information about the last three attempts to send the email.
LastTries []*EmailTry `json:"last_tries"`
// Flags: flags categorize emails. They allow you to obtain more information about recurring errors, for example.
Flags []EmailFlag `json:"flags"`
}
Email: email.
type EmailFlag ¶
type EmailFlag string
func (EmailFlag) MarshalJSON ¶
func (*EmailFlag) UnmarshalJSON ¶
type EmailRcptType ¶
type EmailRcptType string
func (EmailRcptType) MarshalJSON ¶
func (enum EmailRcptType) MarshalJSON() ([]byte, error)
func (EmailRcptType) String ¶
func (enum EmailRcptType) String() string
func (*EmailRcptType) UnmarshalJSON ¶
func (enum *EmailRcptType) UnmarshalJSON(data []byte) error
type EmailStatus ¶
type EmailStatus string
func (EmailStatus) MarshalJSON ¶
func (enum EmailStatus) MarshalJSON() ([]byte, error)
func (EmailStatus) String ¶
func (enum EmailStatus) String() string
func (*EmailStatus) UnmarshalJSON ¶
func (enum *EmailStatus) UnmarshalJSON(data []byte) error
type EmailTry ¶
type EmailTry struct {
// Rank: rank number of this attempt to send the email.
Rank uint32 `json:"rank"`
// TriedAt: date of the attempt to send the email.
TriedAt *time.Time `json:"tried_at"`
// Code: the SMTP status code received after the attempt. 0 if the attempt did not reach an SMTP server.
Code int32 `json:"code"`
// Message: the SMTP message received. If the attempt did not reach an SMTP server, the message returned explains what happened.
Message string `json:"message"`
}
EmailTry: email try.
type GetDomainLastStatusRequest ¶
type GetDomainLastStatusRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DomainID: ID of the domain to delete.
DomainID string `json:"-"`
}
GetDomainLastStatusRequest: get domain last status request.
type GetDomainRequest ¶
type GetDomainRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DomainID: ID of the domain.
DomainID string `json:"-"`
}
GetDomainRequest: get domain request.
type GetEmailRequest ¶
type GetEmailRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// EmailID: ID of the email to retrieve.
EmailID string `json:"-"`
}
GetEmailRequest: get email request.
type GetStatisticsRequest ¶
type GetStatisticsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// ProjectID: (Optional) Number of emails for this Project.
ProjectID *string `json:"-"`
// DomainID: (Optional) Number of emails sent from this domain (must be coherent with the `project_id` and the `organization_id`).
DomainID *string `json:"-"`
// Since: (Optional) Number of emails created after this date.
Since *time.Time `json:"-"`
// Until: (Optional) Number of emails created before this date.
Until *time.Time `json:"-"`
// MailFrom: (Optional) Number of emails sent with this sender's email address.
MailFrom *string `json:"-"`
}
GetStatisticsRequest: get statistics request.
type ListDomainsRequest ¶
type ListDomainsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Page: requested page number. Value must be greater or equal to 1.
Page *int32 `json:"-"`
// PageSize: page size.
PageSize *uint32 `json:"-"`
ProjectID *string `json:"-"`
Status []DomainStatus `json:"-"`
OrganizationID *string `json:"-"`
Name *string `json:"-"`
}
ListDomainsRequest: list domains request.
type ListDomainsResponse ¶
type ListDomainsResponse struct {
// TotalCount: number of domains that match the request (without pagination).
TotalCount uint32 `json:"total_count"`
Domains []*Domain `json:"domains"`
}
ListDomainsResponse: list domains response.
func (*ListDomainsResponse) UnsafeAppend ¶
func (r *ListDomainsResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListDomainsResponse) UnsafeGetTotalCount ¶
func (r *ListDomainsResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListEmailsRequest ¶
type ListEmailsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
Page *int32 `json:"-"`
PageSize *uint32 `json:"-"`
// ProjectID: (Optional) ID of the Project in which to list the emails.
ProjectID *string `json:"-"`
// DomainID: (Optional) ID of the domain for which to list the emails.
DomainID *string `json:"-"`
// MessageID: (Optional) ID of the message for which to list the emails.
MessageID *string `json:"-"`
// Since: (Optional) List emails created after this date.
Since *time.Time `json:"-"`
// Until: (Optional) List emails created before this date.
Until *time.Time `json:"-"`
// MailFrom: (Optional) List emails sent with this sender's email address.
MailFrom *string `json:"-"`
// Deprecated: MailTo: list emails sent to this recipient's email address.
MailTo *string `json:"-"`
// MailRcpt: (Optional) List emails sent to this recipient's email address.
MailRcpt *string `json:"-"`
// Statuses: (Optional) List emails with any of these statuses.
Statuses []EmailStatus `json:"-"`
// Subject: (Optional) List emails with this subject.
Subject *string `json:"-"`
// Search: (Optional) List emails by searching to all fields.
Search *string `json:"-"`
// OrderBy: (Optional) List emails corresponding to specific criteria.
// Default value: created_at_desc
OrderBy ListEmailsRequestOrderBy `json:"-"`
// Flags: (Optional) List emails containing only specific flags.
Flags []EmailFlag `json:"-"`
}
ListEmailsRequest: list emails request.
type ListEmailsRequestOrderBy ¶
type ListEmailsRequestOrderBy string
func (ListEmailsRequestOrderBy) MarshalJSON ¶
func (enum ListEmailsRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListEmailsRequestOrderBy) String ¶
func (enum ListEmailsRequestOrderBy) String() string
func (*ListEmailsRequestOrderBy) UnmarshalJSON ¶
func (enum *ListEmailsRequestOrderBy) UnmarshalJSON(data []byte) error
type ListEmailsResponse ¶
type ListEmailsResponse struct {
// TotalCount: number of emails matching the requested criteria.
TotalCount uint32 `json:"total_count"`
// Emails: single page of emails matching the requested criteria.
Emails []*Email `json:"emails"`
}
ListEmailsResponse: list emails response.
func (*ListEmailsResponse) UnsafeAppend ¶
func (r *ListEmailsResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListEmailsResponse) UnsafeGetTotalCount ¶
func (r *ListEmailsResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type RevokeDomainRequest ¶
type RevokeDomainRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DomainID: ID of the domain to delete.
DomainID string `json:"-"`
}
RevokeDomainRequest: revoke domain request.
type Statistics ¶
type Statistics struct {
// TotalCount: total number of emails matching the requested criteria.
TotalCount uint32 `json:"total_count"`
// NewCount: number of emails still in the `new` transient state. This means emails received from the API but not yet processed.
NewCount uint32 `json:"new_count"`
// SendingCount: number of emails still in the `sending` transient state. This means emails received from the API but not yet in their final status.
SendingCount uint32 `json:"sending_count"`
// SentCount: number of emails in the final `sent` state. This means emails that have been delivered to the target mail system.
SentCount uint32 `json:"sent_count"`
// FailedCount: number of emails in the final `failed` state. This means emails that have been refused by the target mail system with a final error status.
FailedCount uint32 `json:"failed_count"`
// CanceledCount: number of emails in the final `canceled` state. This means emails that have been canceled upon request.
CanceledCount uint32 `json:"canceled_count"`
}
Statistics: statistics.