Skip to main content

Crate sendly

Crate sendly 

Source
Expand description

§Sendly Rust SDK

Official Rust client for the Sendly SMS API.

§Quick Start

use sendly::{Sendly, SendMessageRequest};

#[tokio::main]
async fn main() -> Result<(), sendly::Error> {
    let client = Sendly::new("sk_live_v1_your_api_key");

    let message = client.messages().send(SendMessageRequest {
        to: "+15551234567".to_string(),
        text: "Hello from Sendly!".to_string(),
        message_type: None,
        media_urls: None,
        metadata: None,
    }).await?;

    println!("Message sent: {}", message.id);
    Ok(())
}

§Webhooks Management

use sendly::Sendly;

#[tokio::main]
async fn main() -> Result<(), sendly::Error> {
    let client = Sendly::new("sk_live_v1_your_api_key");

    // Create a webhook
    let response = client.webhooks().create(
        "https://example.com/webhook",
        vec!["message.delivered", "message.failed"],
    ).await?;

    println!("Webhook secret: {}", response.secret);
    Ok(())
}

§Account & Credits

use sendly::Sendly;

#[tokio::main]
async fn main() -> Result<(), sendly::Error> {
    let client = Sendly::new("sk_live_v1_your_api_key");

    let credits = client.account().credits().await?;
    println!("Available credits: {}", credits.available_balance);
    Ok(())
}

Modules§

webhooks
Sendly Webhook Helpers

Structs§

Account
Account information.
AccountLimits
Account rate limits.
AccountResource
Account resource for managing account information and credits.
AccountVerification
Account verification status.
AddContactsRequest
AddLabelsRequest
Request to add labels to a conversation.
AiMetadata
AI classification metadata for an inbound message.
AnalyticsOverview
AnalyticsPeriod
ApiKey
An API key.
AutoTopUpSettings
BatchList
Paginated list of batches.
BatchMessageItem
A single message in a batch request.
BatchMessageResponse
Response from sending batch messages.
BatchMessageResult
Result of a single message in a batch.
BatchPreviewItem
A single message in a batch preview.
BatchPreviewResponse
Response from previewing a batch (dry run).
BillingBreakdown
BillingBreakdownOptions
BillingBreakdownSummary
BulkProvisionRequest
BulkProvisionResult
BulkProvisionResultItem
BulkProvisionSummary
BulkProvisionWorkspace
Campaign
CampaignListResponse
CampaignPreview
CampaignsResource
CancelInvitationResponse
CancelScheduledMessageResponse
Response from cancelling a scheduled message.
CheckVerificationRequest
CheckVerificationResponse
Contact
ContactList
ContactListResponse
ContactListsResource
ContactListsResponse
ContactsResource
Conversation
An SMS conversation thread.
ConversationListResponse
Response from listing conversations.
ConversationMessages
Messages within a conversation.
ConversationPagination
Pagination info for conversation lists.
ConversationWithMessages
A conversation with its messages.
ConversationsResource
Conversations resource for managing SMS conversation threads.
CreateApiKeyRequest
Request to create an API key.
CreateApiKeyResponse
Response from creating an API key.
CreateCampaignRequest
CreateContactListRequest
CreateContactRequest
CreateDraftRequest
Request to create a draft.
CreateLabelRequest
Request to create a label.
CreateOptInPageRequest
CreateOptInPageResponse
CreateSessionRequest
CreateTemplateRequest
CreateWebhookRequest
Request to create a webhook.
CreateWorkspaceKeyRequest
CreateWorkspaceRequest
CreditDataPoint
CreditTransaction
A credit transaction.
CreditTransactionList
List of credit transactions.
Credits
Credit balance information.
CreditsAnalytics
DeleteOptInPageResponse
DeleteTemplateResponse
DeleteWorkspaceResponse
DeliveryByWorkspace
DepositCreditsRequest
DnsInstructions
DnsRecord
DraftListResponse
Response from listing drafts.
DraftPagination
Pagination info for draft lists.
DraftsResource
Drafts resource for managing message drafts.
EnterpriseAccount
EnterpriseResource
EnterpriseWebhook
EnterpriseWebhookTestResult
EnterpriseWorkspace
EnterpriseWorkspaceDetail
EnterpriseWorkspaceSummary
EnterpriseWorkspaceVerification
GetConversationOptions
Options for getting a single conversation.
ImportContactItem
ImportContactsError
ImportContactsRequest
ImportContactsResponse
InheritVerificationRequest
InheritVerificationResponse
Invitation
Label
A conversation label.
LabelListResponse
Response from listing labels.
LabelsResource
Labels resource for managing conversation labels.
ListBatchesOptions
Options for listing batches.
ListCampaignsOptions
ListContactsOptions
ListConversationsOptions
Options for listing conversations.
ListDeliveriesOptions
Options for listing webhook deliveries.
ListDraftsOptions
Options for listing drafts.
ListMessagesOptions
Options for listing messages.
ListScheduledMessagesOptions
Options for listing scheduled messages.
ListTemplatesOptions
ListTransactionsOptions
Options for listing transactions.
ListVerificationsOptions
Media
MediaFile
An uploaded media file.
Message
An SMS message.
MessageDataPoint
MessageDraft
A message draft.
MessageList
Paginated list of messages.
Messages
Messages resource for sending and managing SMS.
MessagesAnalytics
OptInPage
Pagination
PoolCredits
ProvisionWorkspaceRequest
ProvisionWorkspaceResponse
QuotaSettings
RejectDraftRequest
Request to reject a draft.
ReplyToConversationRequest
Request to reply to a conversation.
ResumeWorkspaceResponse
RevokeKeyResponse
ScheduleCampaignRequest
ScheduleMessageRequest
Request to schedule an SMS message.
ScheduledMessage
A scheduled SMS message.
ScheduledMessageList
Paginated list of scheduled messages.
SendBatchRequest
Request to send batch messages.
SendInvitationRequest
SendMessageRequest
Request to send an SMS message.
SendVerificationRequest
SendVerificationResponse
Sendly
Sendly API client.
SendlyConfig
Configuration for the Sendly client.
SessionsResource
SetCustomDomainRequest
SetCustomDomainResponse
SetEnterpriseWebhookRequest
SetWorkspaceWebhookRequest
SetWorkspaceWebhookResponse
SubmitVerificationRequest
SubmitVerificationResponse
SuspendWorkspaceRequest
SuspendWorkspaceResponse
Template
TemplateList
TemplatePagination
TemplatesResource
TransferCreditsRequest
TransferCreditsResponse
UpdateAutoTopUpRequest
UpdateCampaignRequest
UpdateContactListRequest
UpdateContactRequest
UpdateConversationRequest
Request to update a conversation.
UpdateDraftRequest
Request to update a draft.
UpdateOptInPageRequest
UpdateQuotaRequest
UpdateTemplateRequest
UpdateWebhookRequest
Request to update a webhook.
ValidateSessionRequest
ValidateSessionResponse
Verification
VerificationAddress
VerificationContact
VerificationList
VerifyResource
VerifySession
Webhook
A webhook configuration.
WebhookCreatedResponse
Response from creating a webhook (includes secret).
WebhookDelivery
A webhook delivery attempt.
WebhookDeliveryList
List of webhook deliveries.
WebhookSecretRotation
Response from rotating a webhook secret.
WebhookTestResult
Result from testing a webhook.
WebhooksResource
Webhooks resource for managing webhook endpoints.
WorkspaceBillingItem
WorkspaceCredits
WorkspaceKey
WorkspaceKeyResponse
WorkspaceTransferCreditsRequest
WorkspaceTransferCreditsResponse
WorkspaceVerificationStatus
WorkspaceWebhookConfig
WorkspaceWebhookTestResult

Enums§

BatchStatus
Status of a message batch.
CampaignStatus
Channel
CircuitState
Circuit breaker state for webhooks.
ConversationStatus
Conversation status.
DeliveryStatus
DraftStatus
Draft status.
Error
Errors that can occur when using the Sendly SDK.
MessageDirection
Message direction.
MessageStatus
Message delivery status.
MessageType
Message type for compliance handling.
ScheduledMessageStatus
Status of a scheduled message.
SenderType
Sender type.
SessionStatus
TemplateType
TransactionType
Credit transaction type.
VerificationStatus
WebhookMode
Webhook mode for event filtering.

Type Aliases§

Result
Result type for Sendly operations.