twitter-v2 0.1.8

Twitter API v2
Documentation
use super::TwitterApi;
use crate::api_result::ApiResult;
use crate::authorization::Authorization;
use crate::data::{ComplianceJob, ComplianceJobKind};
use crate::id::IntoNumericId;
use crate::query::{ComplianceJobKindQuery, GetComplianceJobsRequestBuilder, UrlQueryExt};
use crate::requests::ComplianceJobBuilder;
use reqwest::Method;

impl<A> TwitterApi<A>
where
    A: Authorization,
{
    pub fn get_compliance_jobs(
        &self,
        kind: impl IntoIterator<Item = ComplianceJobKindQuery>,
    ) -> GetComplianceJobsRequestBuilder<A, Vec<ComplianceJob>, ()> {
        let mut url = self.url("compliance/jobs").unwrap();
        url.append_query_seq("type", kind);
        GetComplianceJobsRequestBuilder::new(self, url)
    }
    pub async fn get_compliance_job(
        &self,
        id: impl IntoNumericId,
    ) -> ApiResult<A, ComplianceJob, ()> {
        self.send(self.request(Method::GET, self.url(format!("compliance/job/{id}"))?))
            .await
    }
    pub fn post_compliance_job(&self, kind: ComplianceJobKind) -> ComplianceJobBuilder<A> {
        ComplianceJobBuilder::new(self, self.url("compliance/jobs").unwrap(), kind)
    }
}