pub struct Client { /* private fields */ }
Expand description
Client for CWE-CAPEC API 1.0
The CWE-CAPEC API specification defines the RESTful semantics for querying the CWE and CAPEC data sets from MITRE hosted servers. The goals of this API are to provide access to the RAW CWE dataset in JSON form, and to perform common search, and filter queries
TODO
Version: 1.0
Implementations§
Source§impl Client
impl Client
Sourcepub fn new(baseurl: &str) -> Self
pub fn new(baseurl: &str) -> Self
Create a new client.
baseurl
is the base URL provided to the internal
reqwest::Client
, and should include a scheme and hostname,
as well as port and a path stem if applicable.
Sourcepub fn new_with_client(baseurl: &str, client: Client) -> Self
pub fn new_with_client(baseurl: &str, client: Client) -> Self
Construct a new client with an existing reqwest::Client
,
allowing more control over its configuration.
baseurl
is the base URL provided to the internal
reqwest::Client
, and should include a scheme and hostname,
as well as port and a path stem if applicable.
Sourcepub fn api_version(&self) -> &'static str
pub fn api_version(&self) -> &'static str
Get the version of this API.
This string is pulled directly from the source OpenAPI document and may be in any format the API selects.
Source§impl Client
impl Client
Sourcepub async fn get_cwe<'a>(
&'a self,
) -> Result<ResponseValue<CweVersion>, Error<()>>
pub async fn get_cwe<'a>( &'a self, ) -> Result<ResponseValue<CweVersion>, Error<()>>
CWE content version
This API endpoint returns content version data of CWE.
Sends a GET
request to /cwe/version
Sourcepub async fn get_cwe_info<'a>(
&'a self,
id_s: &'a str,
) -> Result<ResponseValue<CweInfo>, Error<()>>
pub async fn get_cwe_info<'a>( &'a self, id_s: &'a str, ) -> Result<ResponseValue<CweInfo>, Error<()>>
CWE ID type
This API endpoint returns metadata on specified CWE IDs.
Sends a GET
request to /cwe/{id(s)}
Arguments:
id_s
: comma separated
Sourcepub async fn get_cwe_weakness<'a>(
&'a self,
id_s: &'a str,
) -> Result<ResponseValue<Vec<Weakness>>, Error<()>>
pub async fn get_cwe_weakness<'a>( &'a self, id_s: &'a str, ) -> Result<ResponseValue<Vec<Weakness>>, Error<()>>
CWE weaknesses
This API endpoint returns a given set of CWE weaknesses by identifier. Multiple identifiers are separated by a comma. If the keyword “all” is given, all CWE weaknesses are returned.
Sends a GET
request to /cwe/weakness/{id(s)}
Arguments:
id_s
: CWE Weakness ID(s) - comma separated
Sourcepub async fn get_cwe_category<'a>(
&'a self,
id_s: &'a str,
) -> Result<ResponseValue<Vec<Category>>, Error<()>>
pub async fn get_cwe_category<'a>( &'a self, id_s: &'a str, ) -> Result<ResponseValue<Vec<Category>>, Error<()>>
CWE categories
This API endpoint returns a given set of CWE categories by identifier. Multiple identifiers are separated by a comma. If keyword “all” is given, all CWE categories are returned.
Sends a GET
request to /cwe/category/{id(s)}
Arguments:
id_s
: CWE Category ID(s) - comma separated
Sourcepub async fn get_cwe_view<'a>(
&'a self,
id_s: &'a str,
) -> Result<ResponseValue<Vec<View>>, Error<()>>
pub async fn get_cwe_view<'a>( &'a self, id_s: &'a str, ) -> Result<ResponseValue<Vec<View>>, Error<()>>
CWE views
This API endpoint returns a given set of CWE views by identifier. Multiple identifiers are separated by a comma. If keyword “all” is given, all CWE views are returned.
Sends a GET
request to /cwe/view/{id(s)}
Arguments:
id_s
: CWE View ID(s) - comma separated
Sourcepub async fn get_cwe_parents<'a>(
&'a self,
id: &'a str,
view: Option<&'a str>,
) -> Result<ResponseValue<Vec<Parents>>, Error<()>>
pub async fn get_cwe_parents<'a>( &'a self, id: &'a str, view: Option<&'a str>, ) -> Result<ResponseValue<Vec<Parents>>, Error<()>>
The parent of a specified weakness, sampling by the view
Sends a GET
request to /cwe/{id}/parents
Arguments:
id
: CWE IDview
: The View_ID field specifies which view to follow in the Has_Member entries and ChildOf relationships to determine the direct parent(s). If there are no parents, the response will be empty. If no view is provided, the parents in all views will be returned
Sourcepub async fn get_cwe_descendants<'a>(
&'a self,
id: &'a str,
view: Option<&'a str>,
) -> Result<ResponseValue<Vec<Descendants>>, Error<()>>
pub async fn get_cwe_descendants<'a>( &'a self, id: &'a str, view: Option<&'a str>, ) -> Result<ResponseValue<Vec<Descendants>>, Error<()>>
All descendants of a specified weakness, sampling by the view
Sends a GET
request to /cwe/{id}/descendants
Arguments:
id
: CWE IDview
: The View_ID field specifies which view to follow in the Has_Member entries and ChildOf relationships to determine the appropriate descendants. If there are no descendants, the response will be empty. If no view is provided, the descendants in all views will be returned
Sourcepub async fn get_cwe_children<'a>(
&'a self,
id: &'a str,
view: Option<&'a str>,
) -> Result<ResponseValue<Vec<Children>>, Error<()>>
pub async fn get_cwe_children<'a>( &'a self, id: &'a str, view: Option<&'a str>, ) -> Result<ResponseValue<Vec<Children>>, Error<()>>
Children of a specified weakness, sampling by the view
Sends a GET
request to /cwe/{id}/children
Arguments:
id
: CWE IDview
: The View_ID field specifies which view to follow in the Has_Member entries and ChildOf relationships to determine the direct children. If there are no children, the response will be empty. If no view is provided, the childen in all views will be returned
Sourcepub async fn get_cwe_ancestors<'a>(
&'a self,
id: &'a str,
primary: Option<bool>,
view: Option<&'a str>,
) -> Result<ResponseValue<Vec<Ancestors>>, Error<()>>
pub async fn get_cwe_ancestors<'a>( &'a self, id: &'a str, primary: Option<bool>, view: Option<&'a str>, ) -> Result<ResponseValue<Vec<Ancestors>>, Error<()>>
The ancestors of a specified weakness, sampling by the view
Sends a GET
request to /cwe/{id}/ancestors
Arguments:
id
: CWE IDprimary
: Limit ancestors to include only primary parentsview
: The View_ID field specifies which view to follow in the Has_Member entries and ChildOf relationships to determine the appropriate ancestors. If there are no ancestors, the response will be empty. If no view is provided, the ancestors in all views will be returned