// use crate as github; use git_next_config as config; use git_next_git as git; use kxio::network; // https://docs.github.com/en/rest/repos/webhooks?apiVersion=2022-11-28#delete-a-repository-webhook pub async fn unregister( github: &github::Github, webhook_id: &config::WebhookId, ) -> git::forge::webhook::Result<()> { let net = &github.net; let repo_details = &github.repo_details; let hostname = repo_details.forge.hostname(); let request = network::NetRequest::new( network::RequestMethod::Delete, network::NetUrl::new(format!( "https://api.{hostname}/repos/{}/hooks/{}", repo_details.repo_path, webhook_id )), github::webhook::headers(repo_details.forge.token()), network::RequestBody::None, network::ResponseType::None, None, network::NetRequestLogging::None, ); net.delete(request) .await .map_err(|e| git::forge::webhook::Error::FailedToRegister(e.to_string())) .map(|_| ()) }