[−][src]Crate catenis_api_client
Catenis API Client
This library is used to make it easier to access the Catenis Enterprise API services.
Note: this release of the library targets version 10.0 of the Catenis Enterprise API.
Usage
To use it, one needs to instantiate a new CatenisClient
object. Then, to make a call to an
API method, just call the corresponding method on the client object.
Example
use catenis_api_client::{ CatenisClient, ClientOptions, Environment, Result, }; // Instantiate Catenis API client object let mut ctn_client = CatenisClient::new_with_options( Some(( "drc3XdxNtzoucpw9xiRp", concat!( "4c1749c8e86f65e0a73e5fb19f2aa9e74a716bc22d7956bf3072b4bc3fbfe2a0", "d138ad0d4bcfee251e4e5f54d6e92b8fd4eb36958a7aeaeeb51e8d2fcc4552c3" ), ).into()), &[ ClientOptions::Environment(Environment::Sandbox), ], )?; // Call Read Message API method let result = ctn_client.read_message("o3muoTnnD6cXYyarYY38", None)?; println!("Read message result: {:?}", result);
Notification
The library also makes it easy for receiving notifications from the Catenis system through its
WsNotifyChannel
data structure, which embeds a WebSocket client.
Asynchronous processing
The library allows for asynchronous processing using the Tokio runtime.
Note: only Tokio version 0.2 is currently supported.
To activate asynchronous processing, the async
feature must be enabled.
catenis_api_client = { version = "1.0", features = ["async"] }
The asynchronous version of the client can then be accessed from the async_impl
module.
Example
use catenis_api_client::{ async_impl, ClientOptions, Environment, Result, }; // Instantiate asynchronous Catenis API client object let mut ctn_client = async_impl::CatenisClient::new_with_options( Some(( "drc3XdxNtzoucpw9xiRp", concat!( "4c1749c8e86f65e0a73e5fb19f2aa9e74a716bc22d7956bf3072b4bc3fbfe2a0", "d138ad0d4bcfee251e4e5f54d6e92b8fd4eb36958a7aeaeeb51e8d2fcc4552c3" ), ).into()), &[ ClientOptions::Environment(Environment::Sandbox), ], )?;
Re-exports
pub use error::Error; |
pub use error::Result; |
pub use notification::WsNotifyChannel; |
Modules
api | |
async_impl | |
error | |
notification |
Structs
ApiVersion | Specifies a version of the Catenis API. |
CatenisClient | Represents a Catenis API client. |
DeviceCredentials | Credentials for a Catenis virtual device to access the Catenis API services. |
UtcDateTime | Represents a date and time in reference to the UTC timezone. |
Enums
ClientOptions | Option settings that can be used when instantiating the Catenis API client. |
Environment | Available Catenis API server environments. |