pub struct Pexels { /* private fields */ }Expand description
Client for interacting with the Pexels API
§Example
use dotenv::dotenv;
use pexels_api::Pexels;
use std::env;
#[tokio::main]
async fn main() {
dotenv().ok();
let api_key = env::var("PEXELS_API_KEY").expect("PEXELS_API_KEY not set");
let client = Pexels::new(api_key);
}§Errors
Returns a PexelsError if the request fails or the response cannot be parsed as JSON.
§Example
use dotenv::dotenv;
use pexels_api::Pexels;
use pexels_api::SearchBuilder;
use std::env;
#[tokio::main]
async fn main() {
dotenv().ok();
let api_key = env::var("PEXELS_API_KEY").expect("PEXELS_API_KEY not set");
let client = Pexels::new(api_key);
let response = client.search_photos(SearchBuilder::new().query("mountains").per_page(15).page(1)).await.expect("Failed to get photos");
println!("{:?}", response);
}Implementations§
Source§impl Pexels
impl Pexels
Sourcepub async fn search_photos(
&self,
builder: SearchBuilder<'_>,
) -> Result<PhotosResponse, PexelsError>
pub async fn search_photos( &self, builder: SearchBuilder<'_>, ) -> Result<PhotosResponse, PexelsError>
Sourcepub async fn curated_photo(
&self,
builder: CuratedBuilder,
) -> Result<PhotosResponse, PexelsError>
pub async fn curated_photo( &self, builder: CuratedBuilder, ) -> Result<PhotosResponse, PexelsError>
Sourcepub async fn search_videos(
&self,
builder: VideoSearchBuilder<'_>,
) -> Result<VideoResponse, PexelsError>
pub async fn search_videos( &self, builder: VideoSearchBuilder<'_>, ) -> Result<VideoResponse, PexelsError>
Sourcepub async fn popular_videos(
&self,
builder: PopularBuilder,
) -> Result<VideoResponse, PexelsError>
pub async fn popular_videos( &self, builder: PopularBuilder, ) -> Result<VideoResponse, PexelsError>
Sourcepub async fn search_collections(
&self,
per_page: usize,
page: usize,
) -> Result<CollectionsResponse, PexelsError>
pub async fn search_collections( &self, per_page: usize, page: usize, ) -> Result<CollectionsResponse, PexelsError>
Sourcepub async fn featured_collections(
&self,
per_page: usize,
page: usize,
) -> Result<CollectionsResponse, PexelsError>
pub async fn featured_collections( &self, per_page: usize, page: usize, ) -> Result<CollectionsResponse, PexelsError>
featured_collections Retrieves a list of featured collections from the Pexels API.
§Arguments
per_page- The number of collections to retrieve per page.page- The page number to retrieve.
§Errors
Returns a PexelsError if the request fails or the response cannot be parsed as JSON.
§Example
use dotenv::dotenv;
use pexels_api::Pexels;
use std::env;
#[tokio::main]
async fn main() {
dotenv().ok();
let api_key = env::var("PEXELS_API_KEY").expect("PEXELS_API_KEY not set");
let client = Pexels::new(api_key);
let response = client.featured_collections(15, 1).await.expect("Failed to get collections");
println!("{:?}", response);
}Sourcepub async fn search_media(
&self,
builder: MediaBuilder,
) -> Result<MediaResponse, PexelsError>
pub async fn search_media( &self, builder: MediaBuilder, ) -> Result<MediaResponse, PexelsError>
Auto Trait Implementations§
impl Freeze for Pexels
impl !RefUnwindSafe for Pexels
impl Send for Pexels
impl Sync for Pexels
impl Unpin for Pexels
impl !UnwindSafe for Pexels
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more