# Rust API client for tapis-streams

Manage Tapis Streams API.

For more information, please visit [https://tapis-project.org](https://tapis-project.org)

## Overview

This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project.  By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client.

- API version: 1
- Package version: 0.3.1
- Generator version: 7.18.0
- Build package: `org.openapitools.codegen.languages.RustClientCodegen`

## Installation

Put the package under your project folder in a directory named `tapis-streams` and add the following to `Cargo.toml` under `[dependencies]`:

```
tapis-streams = { path = "./tapis-streams" }
```

## Documentation for API Endpoints

All URIs are relative to *http://localhost:5000*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*ArchivesApi* | [**archive_project**](docs/ArchivesApi.md#archive_project) | **POST** /v3/streams/projects/{project_id}/archives | Archive a projects data and metadata
*ArchivesApi* | [**list_archives**](docs/ArchivesApi.md#list_archives) | **GET** /v3/streams/projects/{project_id}/archives | List Archive policies for a project
*ChannelsApi* | [**create_channels**](docs/ChannelsApi.md#create_channels) | **POST** /v3/streams/channels | Create channels.
*ChannelsApi* | [**delete_channel**](docs/ChannelsApi.md#delete_channel) | **DELETE** /v3/streams/channels/{channel_id} | Delete a channel
*ChannelsApi* | [**get_channel**](docs/ChannelsApi.md#get_channel) | **GET** /v3/streams/channels/{channel_id} | Get channels details
*ChannelsApi* | [**list_alerts**](docs/ChannelsApi.md#list_alerts) | **GET** /v3/streams/channels/{channel_id}/alerts | List alerts for given channel id
*ChannelsApi* | [**list_channels**](docs/ChannelsApi.md#list_channels) | **GET** /v3/streams/channels | List channels.
*ChannelsApi* | [**update_channel**](docs/ChannelsApi.md#update_channel) | **PUT** /v3/streams/channels/{channel_id} | Update a channel
*ChannelsApi* | [**update_status**](docs/ChannelsApi.md#update_status) | **POST** /v3/streams/channels/{channel_id} | Update channel status
*HealthcheckApi* | [**healthcheck**](docs/HealthcheckApi.md#healthcheck) | **GET** /v3/streams/healthcheck | Healthcheck
*HelloApi* | [**hello**](docs/HelloApi.md#hello) | **GET** /v3/streams/hello | Say Hello
*InstrumentsApi* | [**create_instrument**](docs/InstrumentsApi.md#create_instrument) | **POST** /v3/streams/projects/{project_id}/sites/{site_id}/instruments | Create instruments (single or bulk)
*InstrumentsApi* | [**delete_instrument**](docs/InstrumentsApi.md#delete_instrument) | **DELETE** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id} | Delete an instrument
*InstrumentsApi* | [**get_instrument**](docs/InstrumentsApi.md#get_instrument) | **GET** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id} | Get instrument details
*InstrumentsApi* | [**list_instruments**](docs/InstrumentsApi.md#list_instruments) | **GET** /v3/streams/projects/{project_id}/sites/{site_id}/instruments | List instruments
*InstrumentsApi* | [**update_instrument**](docs/InstrumentsApi.md#update_instrument) | **PUT** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id} | Update an instrument
*MeasuredPropertiesApi* | [**list_measured_properties**](docs/MeasuredPropertiesApi.md#list_measured_properties) | **GET** /measured_properties | List measured_properties.
*MeasurementsApi* | [**create_measurement**](docs/MeasurementsApi.md#create_measurement) | **POST** /v3/streams/measurements | Create a measurement.
*MeasurementsApi* | [**download_measurements**](docs/MeasurementsApi.md#download_measurements) | **GET** /v3/streams/measurements/{inst_id} | List measurements when only inst_id is provided
*MeasurementsApi* | [**list_measurements**](docs/MeasurementsApi.md#list_measurements) | **GET** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id}/measurements | List measurements.
*OntologiesApi* | [**add_ontology**](docs/OntologiesApi.md#add_ontology) | **POST** /v3/streams/ontologies | Add an ontology .
*OntologiesApi* | [**delete_ontology**](docs/OntologiesApi.md#delete_ontology) | **DELETE** /v3/streams/ontologies/{onto_id} | Delete an ontology
*OntologiesApi* | [**get_ontology**](docs/OntologiesApi.md#get_ontology) | **GET** /v3/streams/ontologies/{onto_id} | Get ontology details.
*OntologiesApi* | [**list_ontologies**](docs/OntologiesApi.md#list_ontologies) | **GET** /v3/streams/ontologies | List ontologies.
*OntologiesApi* | [**update_ontology**](docs/OntologiesApi.md#update_ontology) | **PUT** /v3/streams/ontologies/{onto_id} | Update an ontology
*ProjectsApi* | [**create_project**](docs/ProjectsApi.md#create_project) | **POST** /v3/streams/projects | Create a project.
*ProjectsApi* | [**delete_project**](docs/ProjectsApi.md#delete_project) | **DELETE** /v3/streams/projects/{project_id} | Delete a project
*ProjectsApi* | [**get_project**](docs/ProjectsApi.md#get_project) | **GET** /v3/streams/projects/{project_id} | Get project details.
*ProjectsApi* | [**list_projects**](docs/ProjectsApi.md#list_projects) | **GET** /v3/streams/projects | List projects.
*ProjectsApi* | [**update_project**](docs/ProjectsApi.md#update_project) | **PUT** /v3/streams/projects/{project_id} | Update a project
*ReadyApi* | [**ready**](docs/ReadyApi.md#ready) | **GET** /v3/streams/ready | Check readiness of InfluxDB, Chords and Kapacitor
*RevokeRolesApi* | [**revoke_role**](docs/RevokeRolesApi.md#revoke_role) | **POST** /v3/streams/roles/revokeRole | Revoke user role.
*RolesApi* | [**grant_role**](docs/RolesApi.md#grant_role) | **POST** /v3/streams/roles | Grant user role.
*RolesApi* | [**list_roles**](docs/RolesApi.md#list_roles) | **GET** /v3/streams/roles | List roles for a given user
*SearchAcrossAllStreamsEndPointsApi* | [**search**](docs/SearchAcrossAllStreamsEndPointsApi.md#search) | **GET** /v3/streams/search/{resource_type} | Search projects, sites, intruments and variables owned by a user
*SitesApi* | [**create_site**](docs/SitesApi.md#create_site) | **POST** /v3/streams/projects/{project_id}/sites | Create a site. (single or bulk)
*SitesApi* | [**delete_site**](docs/SitesApi.md#delete_site) | **DELETE** /v3/streams/projects/{project_id}/sites/{site_id} | Delete a site
*SitesApi* | [**get_site**](docs/SitesApi.md#get_site) | **GET** /v3/streams/projects/{project_id}/sites/{site_id} | Get site details.
*SitesApi* | [**list_sites**](docs/SitesApi.md#list_sites) | **GET** /v3/streams/projects/{project_id}/sites | List sites.
*SitesApi* | [**update_site**](docs/SitesApi.md#update_site) | **PUT** /v3/streams/projects/{project_id}/sites/{site_id} | Update a site
*TemplatesApi* | [**create_template**](docs/TemplatesApi.md#create_template) | **POST** /v3/streams/templates | Create template.
*TemplatesApi* | [**get_template**](docs/TemplatesApi.md#get_template) | **GET** /v3/streams/templates/{template_id} | Get templates.
*TemplatesApi* | [**list_templates**](docs/TemplatesApi.md#list_templates) | **GET** /v3/streams/templates | List templates.
*TemplatesApi* | [**update_template**](docs/TemplatesApi.md#update_template) | **PUT** /v3/streams/templates/{template_id} | Update template.
*TransferInstrumentDataApi* | [**transfer_data**](docs/TransferInstrumentDataApi.md#transfer_data) | **POST** /v3/streams/transfer | Transfer an instruments data to a system
*UnitsApi* | [**list_units**](docs/UnitsApi.md#list_units) | **GET** /units | List units.
*VariablesApi* | [**create_variable**](docs/VariablesApi.md#create_variable) | **POST** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id}/variables | Create variable (single or bulk).
*VariablesApi* | [**delete_variable**](docs/VariablesApi.md#delete_variable) | **DELETE** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id}/variables/{var_id} | Delete a variable
*VariablesApi* | [**get_variable**](docs/VariablesApi.md#get_variable) | **GET** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id}/variables/{var_id} | Get variable details
*VariablesApi* | [**list_variables**](docs/VariablesApi.md#list_variables) | **GET** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id}/variables | List variables.
*VariablesApi* | [**update_variable**](docs/VariablesApi.md#update_variable) | **PUT** /v3/streams/projects/{project_id}/sites/{site_id}/instruments/{inst_id}/variables/{var_id} | Update a variable


## Documentation For Models

 - [Alert](docs/Alert.md)
 - [Archive](docs/Archive.md)
 - [ArchiveProject201Response](docs/ArchiveProject201Response.md)
 - [BasicResponse](docs/BasicResponse.md)
 - [BasicResult](docs/BasicResult.md)
 - [Channel](docs/Channel.md)
 - [ChannelPermissions](docs/ChannelPermissions.md)
 - [ChannelTriggersWithActionsInner](docs/ChannelTriggersWithActionsInner.md)
 - [ChannelTriggersWithActionsInnerAction](docs/ChannelTriggersWithActionsInnerAction.md)
 - [ChannelTriggersWithActionsInnerCondition](docs/ChannelTriggersWithActionsInnerCondition.md)
 - [CreateMeasurement201Response](docs/CreateMeasurement201Response.md)
 - [CreateProject201Response](docs/CreateProject201Response.md)
 - [Deadman](docs/Deadman.md)
 - [ErrorResponse](docs/ErrorResponse.md)
 - [GetChannel200Response](docs/GetChannel200Response.md)
 - [GetInstrument200Response](docs/GetInstrument200Response.md)
 - [GetOntology200Response](docs/GetOntology200Response.md)
 - [GetSite200Response](docs/GetSite200Response.md)
 - [GetVariable200Response](docs/GetVariable200Response.md)
 - [Hello200Response](docs/Hello200Response.md)
 - [Instrument](docs/Instrument.md)
 - [ListAlerts200Response](docs/ListAlerts200Response.md)
 - [ListArchives201Response](docs/ListArchives201Response.md)
 - [ListChannels200Response](docs/ListChannels200Response.md)
 - [ListInstruments200Response](docs/ListInstruments200Response.md)
 - [ListMeasuredProperties200Response](docs/ListMeasuredProperties200Response.md)
 - [ListOntologies200Response](docs/ListOntologies200Response.md)
 - [ListProjects200Response](docs/ListProjects200Response.md)
 - [ListRoles200Response](docs/ListRoles200Response.md)
 - [ListSites200Response](docs/ListSites200Response.md)
 - [ListTemplates200Response](docs/ListTemplates200Response.md)
 - [ListTypeEnum](docs/ListTypeEnum.md)
 - [ListUnits200Response](docs/ListUnits200Response.md)
 - [ListVariables200Response](docs/ListVariables200Response.md)
 - [MeasuredProperty](docs/MeasuredProperty.md)
 - [MeasurementValues](docs/MeasurementValues.md)
 - [Measurements](docs/Measurements.md)
 - [NewArchive](docs/NewArchive.md)
 - [NewArchiveSettings](docs/NewArchiveSettings.md)
 - [NewChannel](docs/NewChannel.md)
 - [NewChannelTriggersWithActionsInner](docs/NewChannelTriggersWithActionsInner.md)
 - [NewChannelTriggersWithActionsInnerAction](docs/NewChannelTriggersWithActionsInnerAction.md)
 - [NewInstrument](docs/NewInstrument.md)
 - [NewMeasurement](docs/NewMeasurement.md)
 - [NewOntology](docs/NewOntology.md)
 - [NewProject](docs/NewProject.md)
 - [NewRole](docs/NewRole.md)
 - [NewSite](docs/NewSite.md)
 - [NewTemplate](docs/NewTemplate.md)
 - [NewVariable](docs/NewVariable.md)
 - [Ontology](docs/Ontology.md)
 - [Project](docs/Project.md)
 - [ResultMetadata](docs/ResultMetadata.md)
 - [RevokeRole](docs/RevokeRole.md)
 - [Roles](docs/Roles.md)
 - [Search200Response](docs/Search200Response.md)
 - [SearchInstrument](docs/SearchInstrument.md)
 - [SearchObject](docs/SearchObject.md)
 - [SearchProject](docs/SearchProject.md)
 - [SearchResponse](docs/SearchResponse.md)
 - [SearchResponseMetadata](docs/SearchResponseMetadata.md)
 - [SearchSite](docs/SearchSite.md)
 - [SearchVariable](docs/SearchVariable.md)
 - [Site](docs/Site.md)
 - [Template](docs/Template.md)
 - [Threshold](docs/Threshold.md)
 - [Transfer](docs/Transfer.md)
 - [TransferData201Response](docs/TransferData201Response.md)
 - [Unit](docs/Unit.md)
 - [UpdateChannel](docs/UpdateChannel.md)
 - [UpdateChannelStatus](docs/UpdateChannelStatus.md)
 - [UpdateInst](docs/UpdateInst.md)
 - [UpdateSite](docs/UpdateSite.md)
 - [UpdateTemplate](docs/UpdateTemplate.md)
 - [UpdateTemplate201Response](docs/UpdateTemplate201Response.md)
 - [UpdateVariable](docs/UpdateVariable.md)
 - [Variable](docs/Variable.md)


To get access to the crate's generated documentation, use:

```
cargo doc --open
```

## Author

cicsupport@tacc.utexas.edu

