[][src]Struct mailchimp::MailchimpApi

pub struct MailchimpApi { /* fields omitted */ }

Mailchimp API

Permite el acceso al API de Mailchimp si conoces bien los diferentes endpoints. Para más información sobre los endpoints ir a la página de desarrollos mailchimp Developers Mailchimp

Ejemplo

extern crate mailchimp;
use mailchimp::MailchimpApi;

let api = MailchimpApi::new("<API Key>");
println!("Api version: {}", api.version());
println!("Api domain: {}", api.domain());

Methods

impl MailchimpApi[src]

pub fn new<'a>(api_key: &'a str) -> Self[src]

Crea la nueva instancia del API

Argumentos api_key: Mailchimp API KEY http_transport: Interfaz por donde se harían las peticiones Get y Post al servicio

pub fn domain(&self) -> String[src]

Devuelve el dominio

pub fn version(&self) -> String[src]

Devuelve la version del API

pub fn post<'a, T, P>(
    &self,
    endpoint: &'a str,
    payload: P
) -> Result<T, MailchimpErrorType> where
    T: DeserializeOwned,
    P: Serialize
[src]

Realiza una petición de tipo POST

extern crate mailchimp;
use std::collections::HashMap;
use mailchimp::MailchimpApi;
use mailchimp::types::AuthorizedAppsType;
fn main() {
    let api = MailchimpApi::new("aac1e319006883125e18a89e529b5abb73de4c81-usX");
    let data = api.post::<AuthorizedAppsType, HashMap<String, String>>("authorized-apps", HashMap::new());
    match data {
        Ok(resp) => {
            for app in resp.apps.iter() {
                println!("{:?}", app)
            }
        },
        Err(e) => println!("Error Title: {:?} \n Error detail {:?}", e.title, e.detail)
    }
}

#Argumentos endpoint: Cadena de texto con el endpoint de la API al que se requiere acceder, no debe comenzar por "/" payload: Dato a enviar al servidor

pub fn patch<'a, T, P>(
    &self,
    endpoint: &'a str,
    payload: P
) -> Result<T, MailchimpErrorType> where
    T: DeserializeOwned,
    P: Serialize
[src]

Función para actualizar los recursos en el servidor

#Argumentos endpoint: Cadena de texto con el endpoint de la API al que se requiere acceder, no debe comenzar por "/" payload: Dato a enviar al servidor

pub fn put<'a, T, P>(
    &self,
    endpoint: &'a str,
    payload: P
) -> Result<T, MailchimpErrorType> where
    T: DeserializeOwned,
    P: Serialize
[src]

Función para actualizar los recursos en el servidor

#Argumentos endpoint: Cadena de texto con el endpoint de la API al que se requiere acceder, no debe comenzar por "/" payload: Dato a enviar al servidor

pub fn get<'a, T>(
    &self,
    endpoint: &'a str,
    payload: HashMap<String, String>
) -> Result<T, MailchimpErrorType> where
    T: DeserializeOwned
[src]

Realiza una petición de tipo GET

extern crate mailchimp;
use std::collections::HashMap;
use mailchimp::MailchimpApi;
use mailchimp::types::AuthorizedAppType;

fn main() {
    let api = MailchimpApi::new("aac1e319006883125e18a89e529b5abb73de4c81-usX");
    let mut params = HashMap::new();
    params.insert("client_id".to_string(), "".to_string());
    params.insert("client_secret".to_string(), "".to_string());
    let data = api.get::<AuthorizedAppType>("authorized-apps", params);
    match data {
        Ok(resp) => {
           println!("{:?}", resp)
        },
        Err(e) => println!("Error Title: {:?} \n Error detail {:?}", e.title, e.detail)
    }
}

#Argumentos endpoint: Cadena de texto con el endpoint de la API al que se requiere acceder, no debe comenzar por "/" payload: Listado llave valor de los parametros o data

pub fn delete<'a, T>(
    &self,
    endpoint: &'a str,
    payload: HashMap<String, String>
) -> Result<T, MailchimpErrorType> where
    T: DeserializeOwned
[src]

Realiza una petición de tipo GET

extern crate mailchimp;
use std::collections::HashMap;
use mailchimp::MailchimpApi;
use mailchimp::types::AuthorizedAppType;

fn main() {
    let api = MailchimpApi::new("aac1e319006883125e18a89e529b5abb73de4c81-usX");
    let mut params = HashMap::new();
    params.insert("client_id".to_string(), "".to_string());
    params.insert("client_secret".to_string(), "".to_string());
    let data = api.get::<AuthorizedAppType>("authorized-apps", params);
    match data {
        Ok(resp) => {
           println!("{:?}", resp)
        },
        Err(e) => println!("Error Title: {:?} \n Error detail {:?}", e.title, e.detail)
    }
}

#Argumentos endpoint: Cadena de texto con el endpoint de la API al que se requiere acceder, no debe comenzar por "/" payload: Listado llave valor de los parametros o data

pub fn ping(&self) -> Result<Ping, MailchimpErrorType>[src]

A health check for the API that won’t return any account-specific information.

Trait Implementations

impl Clone for MailchimpApi[src]

impl Debug for MailchimpApi[src]

impl Default for MailchimpApi[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.