infraqueue-twilio 0.1.1

Twilio client for INFRAQUEUE
Documentation
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TwilioConfig {
    /// Twilio Account SID (starts with AC).
    pub account_sid: String,
    /// Twilio Auth Token (keep this secret).
    pub auth_token: String,
    /// Default Messaging Service SID to use if not specified per message.
    pub messaging_service_sid: Option<String>,
    /// Default phone number to send from if not using messaging_service_sid.
    pub from_number: Option<String>,
    /// Base URL for API requests (default: https://api.twilio.com).
    #[serde(default = "TwilioConfig::default_base_url")]
    pub base_url: String,
    /// If true, use local mocks instead of making actual HTTP calls.
    #[serde(default)]
    pub mock: bool,
}

impl TwilioConfig {
    pub fn default_base_url() -> String {
        "https://api.twilio.com".to_string()
    }
}