
        message: &str,
        body: &serde_json::Value,
    ) -> Result<()> {
        let mut query_args: Vec<(String, String)> = Default::default();
        if!message.is_empty() {
            query_args.push(("message".to_string(), message.to_string()));
        }
        let query_ = serde_urlencoded::to_string(&query_args).unwrap();
        let url = format!(
            "/admin/api/2021-01/fulfillment_orders/{}/cancellation_request/accept.json?{}",
            crate::progenitor_support::encode_path(&fulfillment_order_id.to_string()),
            query_
        );

        self.client
           .post(&url, Some(reqwest::Body::from(serde_json::to_vec(body)?)))
           .await
    }

    /**
     * Rejects a cancellation request sent to a fulfillment service for a fulfillment order.
     *
     * This function performs a `POST` to the `/admin/api/2021-01/fulfillment_orders/{fulfillment_order_id}/cancellation_request/reject.json` endpoint.
     *
     * https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/cancellationrequest#reject-2021-01
     *
     * **Parameters:**
     *
     * * `fulfillment_order_id: &str` -- storefront_access_token_id.
     * * `message: &str` -- An optional reason for rejecting the cancellation request.
     */
    pub async fn deprecated_202101_create_fulfillment_orders_param_order_cancellation_request_reject(
        &self,
        fulfillment_order_id: &str,
        message: &str,
        body: &serde_json::Value,
    ) -> Result<()> {
        let mut query_args: Vec<(String, String)> = Default::default();
        if!message.is_empty() {
            query_args.push(("message".to_string(), message.to_string()));
        }
        let query_ = serde_urlencoded::to_string(&query_args).unwrap();
        let url = format!(
            "/admin/api/2021-01/fulfillment_orders/{}/cancellation_request/reject.json?{}",
            crate::progenitor_support::encode_path(&fulfillment_order_id.to_string()),
            query_
        );

        self.client
           .post(&url, Some(reqwest::Body::from(serde_json::to_vec(body)?)))
           .await
    }

    /**
     * Sends a cancellation request to the fulfillment service of a fulfillment order.
     *
     * This function performs a `POST` to the `/admin/api/unstable/fulfillment_orders/{fulfillment_order_id}/cancellation_request.json` endpoint.
     *
     * https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/cancellationrequest#create-unstable
     *
     * **Parameters:**
     *
     * * `fulfillment_order_id: &str` -- storefront_access_token_id.
     * * `message: &str` -- An optional reason for the cancellation request.
     */
    pub async fn deprecated_unstable_create_fulfillment_orders_param_order_cancellation_request(
        &self,
        fulfillment_order_id: &str,
        message: &str,
        body: &serde_json::Value,
    ) -> Result<()> {
        let mut query_args: Vec<(String, String)> = Default::default();
        if!message.is_empty() {
            query_args.push(("message".to_string(), message.to_string()));
        }
        let query_ = serde_urlencoded::to_string(&query_args).unwrap();
        let url = format!(
            "/admin/api/unstable/fulfillment_orders/{}/cancellation_request.json?{}",
            crate::progenitor_support::encode_path(&fulfillment_order_id.to_string()),
            query_
        );

        self.client
           .post(&url, Some(reqwest::Body::from(serde_json::to_vec(body)?)))
           .await
    }

    /**
     * Accepts a cancellation request sent to a fulfillment service for a fulfillment order.
     *
     * This function performs a `POST` to the `/admin/api/unstable/fulfillment_orders/{fulfillment_order_id}/cancellation_request/accept.json` endpoint.
     *
     * https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/cancellationrequest#accept-unstable
     *
     * **Parameters:**
     *
     * * `fulfillment_order_id: &str` -- storefront_access_token_id.
     * * `message: &str` -- An optional reason for accepting the cancellation request.
     */
    pub async fn deprecated_unstable_create_fulfillment_orders_param_order_cancellation_request_accept(
        &self,
        fulfillment_order_id: &str,
        message: &str,
        body: &serde_json::Value,
    ) -> Result<()> {
        let mut query_args: Vec<(String, String)> = Default::default();
        if!message.is_empty() {
            query_args.push(("message".to_string(), message.to_string()));
        }
        let query_ = serde_urlencoded::to_string(&query_args).unwrap();
        let url = format!(
            "/admin/api/unstable/fulfillment_orders/{}/cancellation_request/accept.json?{}",
            crate::progenitor_support::encode_path(&fulfillment_order_id.to_string()),
            query_
        );

        self.client
           .post(&url, Some(reqwest::Body::from(serde_json::to_vec(body)?)))
           .await
    }

    /**
     * Rejects a cancellation request sent to a fulfillment service for a fulfillment order.
     *
     * This function performs a `POST` to the `/admin/api/unstable/fulfillment_orders/{fulfillment_order_id}/cancellation_request/reject.json` endpoint.
     *
     * https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/cancellationrequest#reject-unstable
     *
     * **Parameters:**
     *
     * * `fulfillment_order_id: &str` -- storefront_access_token_id.
     * * `message: &str` -- An optional reason for rejecting the cancellation request.
     */
    pub async fn deprecated_unstable_create_fulfillment_orders_param_order_cancellation_request_reject(
        &self,
        fulfillment_order_id: &str,
        message: &str,
        body: &serde_json::Value,
    ) -> Result<()> {
        let mut query_args: Vec<(String, String)> = Default::default();
        if!message.is_empty() {
            query_args.push(("message".to_string(), message.to_string()));
        }
        let query_ = serde_urlencoded::to_string(&query_args).unwrap();
        let url = format!(
            "/admin/api/unstable/fulfillment_orders/{}/cancellation_request/reject.json?{}",
            crate::progenitor_support::encode_path(&fulfillment_order_id.to_string()),
            query_
        );

        self.client
           .post(&url, Some(reqwest::Body::from(serde_json::to_vec(body)?)))
           .await
    }

    /**
     * Retrieves a list of carrier services.
     *
     * This function performs a `GET` to the `/admin/api/2020-01/carrier_services.json` endpoint.
     *
     * https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/carrierservice#index-2020-01