async_openai/
moderation.rs1use crate::{
2 config::Config,
3 error::OpenAIError,
4 types::{CreateModerationRequest, CreateModerationResponse},
5 Client,
6};
7
8pub struct Moderations<'c, C: Config> {
12 client: &'c Client<C>,
13}
14
15impl<'c, C: Config> Moderations<'c, C> {
16 pub fn new(client: &'c Client<C>) -> Self {
17 Self { client }
18 }
19
20 #[crate::byot(T0 = serde::Serialize, R = serde::de::DeserializeOwned)]
23 pub async fn create(
24 &self,
25 request: CreateModerationRequest,
26 ) -> Result<CreateModerationResponse, OpenAIError> {
27 self.client.post("/moderations", request).await
28 }
29}