7 releases

new 0.1.6 Dec 18, 2024
0.1.5 Dec 18, 2024
0.1.4 Apr 7, 2023

#1749 in Web programming

MIT license

24KB
521 lines

PATREON

A patreon client crate for rust.

async fn example() {
    // OAuth client
    let client = PatreonOAuth {
        client_id: env!("CLIENT_ID").to_string(),
        client_secret: env!("CLIENT_SECRET").to_string(),
        redirect_uri: env!("REDIRECT_URI").to_string(),
        ..Default::default()
    };
    // authorization by url
    println!("{}", oauth.get_authorization_url());
    oauth.get_tokens("");

    // Api Clinet
    let api = PatreonApi {
        access_token: env!("ACCESS_TOKEN").to_string(),
        ..Default::default()
    };
    println!("{:?}", api.ident().await);
  
    // webhook
    let webhook = Webhook {
        webhook_secret,
    };
    webhook.check_signature(...);
    webhook.parse_event(...);
}

Features

  • OAuth
    • Get authorization url
    • Get tokens from code
    • Refresh tokens
  • Api
    • Current user
    • Identity
    • Identity include Memberships
    • Identity include Campaign
  • Webhook
    • Check check_signature
    • Parse

Dependencies

~6–22MB
~348K SLoC