vantage-client 0.0.8 → 0.1.0.beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +120 -62
  4. data/docs/Cost.md +11 -0
  5. data/docs/Costs.md +11 -0
  6. data/docs/CostsApi.md +177 -0
  7. data/docs/PingApi.md +1 -1
  8. data/docs/PricesApi.md +30 -7
  9. data/docs/Report.md +13 -0
  10. data/docs/Reports.md +9 -0
  11. data/lib/vantage-client/api/costs_api.rb +185 -0
  12. data/lib/vantage-client/api/ping_api.rb +3 -3
  13. data/lib/vantage-client/api/prices_api.rb +25 -1
  14. data/lib/vantage-client/api_client.rb +1 -1
  15. data/lib/vantage-client/api_error.rb +1 -1
  16. data/lib/vantage-client/configuration.rb +1 -1
  17. data/lib/vantage-client/models/cost.rb +215 -0
  18. data/lib/vantage-client/models/costs.rb +216 -0
  19. data/lib/vantage-client/models/price.rb +1 -1
  20. data/lib/vantage-client/models/prices.rb +1 -1
  21. data/lib/vantage-client/models/product.rb +1 -1
  22. data/lib/vantage-client/models/products.rb +1 -1
  23. data/lib/vantage-client/models/provider.rb +1 -1
  24. data/lib/vantage-client/models/providers.rb +1 -1
  25. data/lib/vantage-client/models/report.rb +235 -0
  26. data/lib/vantage-client/models/reports.rb +196 -0
  27. data/lib/vantage-client/models/service.rb +1 -1
  28. data/lib/vantage-client/models/services.rb +1 -1
  29. data/lib/vantage-client/version.rb +2 -2
  30. data/lib/vantage-client.rb +6 -1
  31. data/spec/.DS_Store +0 -0
  32. data/spec/api/costs_api_spec.rb +73 -0
  33. data/spec/api/ping_api_spec.rb +2 -2
  34. data/spec/api/prices_api_spec.rb +9 -1
  35. data/spec/api_client_spec.rb +1 -1
  36. data/spec/configuration_spec.rb +1 -1
  37. data/spec/models/cost_spec.rb +59 -0
  38. data/spec/models/costs_spec.rb +59 -0
  39. data/spec/models/price_spec.rb +1 -1
  40. data/spec/models/prices_spec.rb +1 -1
  41. data/spec/models/product_spec.rb +1 -1
  42. data/spec/models/products_spec.rb +1 -1
  43. data/spec/models/provider_spec.rb +1 -1
  44. data/spec/models/providers_spec.rb +1 -1
  45. data/spec/models/report_spec.rb +71 -0
  46. data/spec/models/reports_spec.rb +47 -0
  47. data/spec/models/service_spec.rb +1 -1
  48. data/spec/models/services_spec.rb +1 -1
  49. data/spec/spec_helper.rb +1 -1
  50. data/vantage-client-0.1.0.beta.1.gem +0 -0
  51. data/vantage-client.gemspec +1 -1
  52. metadata +26 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4de56e7e8c4c46c81e737a595e267c9738740d0a833510b5ffcea74d6da9f745
4
- data.tar.gz: 8e962db8863adb741e65c256cd233837b4c5754292ecd3288d04bb2f08270337
3
+ metadata.gz: 0ba97924389a3cead3481d19d7f95993018c6df91015ad0b0df04d2c179b5abc
4
+ data.tar.gz: e376f9f9fc5d811c5d9f4f6ef6fc251e5156646048ec8e7e923b4f72f1713a7b
5
5
  SHA512:
6
- metadata.gz: 4f9250fc146291fbc5fd06bfcfc736db973606b09b1e894ca29c5d1860262ed45082dc03ef44cd8ae6c1ea45e82f5d38417a4be8fb4cb2faa8a43ca0886f085b
7
- data.tar.gz: 6f76f2de489b007d304201f9acdbcd561ff7ee6418548279e480f9dacd7f9e0e8d933362afa2a4706e823ee6b1b8921f20e460b4d231566c6b538e657d18a063
6
+ metadata.gz: b813831e4dad14c149b0f50e09e792a93b2fcea7b1446ab5e4f05f195f72a8eb7c73f8d543a791b506834abc5dd8ee7164703d918aa573451482b695c52327d0
7
+ data.tar.gz: da561d16a3a8b7ef6a3ed5f470c9297c365338e4518dc90e6031fda3669920fef977570105fa78e541456f753e4233be96c915867cbfb639560c8b723fa67319
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- vantage-client (0.0.6)
4
+ vantage-client (0.1.0.beta.2)
5
5
  addressable (~> 2.3, >= 2.3.0)
6
6
  json (~> 2.1, >= 2.1.0)
7
7
  typhoeus (~> 1.0, >= 1.0.1)
data/README.md CHANGED
@@ -1,113 +1,171 @@
1
1
  [![Build Status](https://www.travis-ci.com/vantage-sh/vantage-ruby.svg?branch=main)](https://www.travis-ci.com/vantage-sh/vantage-ruby)
2
2
 
3
- # vantage-client
3
+ # Vantage Ruby Client
4
4
 
5
- Vantage - the Ruby gem for the Vantage
5
+ ![Vantage Picture](https://uploads-ssl.webflow.com/5f9ba05ba40d6414f341df34/5f9bb1764b6670c6f7739564_moutain-scene.svg)
6
6
 
7
- Vantage API
8
7
 
9
- This SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:
8
+ [Vantage](http://vantage.sh/) is a cloud cost transparency platform. This is the official Ruby client for the [Vantage API](http://vantage.readme.io/). You can use the API to get EC2 instance price and product information through a few simple-to-use API calls. The data offered through this API is heavily inspired from data avaiable from [ec2instances.info](http://ec2instances.info/). The feedback we get from users is that this API is significantly easier than learning and using AWS Pricing APIs. We have plans to expand the data available through this API in the future.
10
9
 
11
- - API version: 1.0.0
12
- - Package version: 0.0.6
13
- - Build package: io.swagger.codegen.languages.RubyClientCodegen
14
- For more information, please visit [https://www.vantage.sh](https://www.vantage.sh)
10
+ ## Need Help?
15
11
 
16
- ## Installation
17
-
18
- ### Build a gem
19
-
20
- To build the Ruby code into a gem:
12
+ Feel free to join us in our [community Slack](https://join.slack.com/t/vantagecommunity/shared_invite/zt-oey52myv-gq4AWRKkX25kjp1UGziPTw) in the #api channel. We're happy to chat and help. You're also welcome to email support@vantage.sh or ping [@JoinVantage](https://twitter.com/joinvantage) on Twitter and we're happy to give assistance. Lastly, we monitor issues on this repo if you have any feature requests or issues.
21
13
 
22
- ```shell
23
- gem build vantage-client.gemspec
24
- ```
14
+ ## Installation
25
15
 
26
- Then either install the gem locally:
16
+ The easiest way to get going is to install the client through RubyGems:
27
17
 
28
18
  ```shell
29
- gem install ./vantage-client-0.0.6.gem
19
+ gem install vantage-client
30
20
  ```
31
- (for development, run `gem install --dev ./vantage-client-0.0.6.gem` to install the development dependencies)
32
-
33
- or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
34
-
35
- Finally add this to the Gemfile:
36
21
 
37
- gem 'vantage-client', '~> 0.0.6'
22
+ ## Generate a Free API Token
23
+ The Vantage API is provided completely for free but requires an API token to use. To generate a free API token, follow these steps:
38
24
 
39
- ### Install from Git
25
+ * Head to [http://vantage.sh/](http://vantage.sh/)
26
+ * Register a free account and confirm your email
27
+ * When you're asked _"What would you like to do first?"_ click _"Access Cloud Pricing API"_
28
+ * Create an API token from the account profile page and you're all set
40
29
 
41
- If the Ruby gem is hosted at a git repository: https://github.com/YOUR_GIT_USERNAME/YOUR_GIT_REPO, then add the following in the Gemfile:
30
+ You'll only need to do this once and you can use your API token for all usage going forward.
42
31
 
43
- gem 'vantage-client', :git => 'https://github.com/YOUR_GIT_USERNAME/YOUR_GIT_REPO.git'
32
+ ## API Primitives
44
33
 
45
- ### Include the Ruby code directly
34
+ The Vantage API is currently organized into four different primitives. Understanding the relationships between these primitives will be helpful as you onboard to the API. Since Vantage only supports EC2 on AWS at the moment, this is provided mainly to show how we are looking at support for future data:
46
35
 
47
- Include the Ruby code directly using `-I` as follows:
36
+ * **Providers**: Providers are the highest level API Primitive. A Provider represents either cloud infrastructure provider or a cloud service provider. Some examples of Providers include AWS, GCP or Azure. Providers offer many Services, which is documented below.
37
+ * **Services**: Services are what Providers offer to their customers. A Service is always tied to a Provider. Some examples of Services are EC2 or S3 from a Provider of AWS. A Service has one or more Products offered, which is documented below.
38
+ * **Products**: Products are what Services ultimately price on. Using the example of a Provider of 'AWS' and a Service of 'EC2', Products would be the individual EC2 Instance Types available such as 'm5d.16xlarge' or 'c5.xlarge'. A Product has one or more Prices, which is documented below.
39
+ * **Prices**: A Product has one or more Prices available to it. For example with EC2 instance types, a single instance type may have potential prices including an on-demand price, a spot price or a reserved instance price.
48
40
 
49
- ```shell
50
- ruby -Ilib script.rb
51
- ```
52
41
 
53
42
  ## Getting Started
54
43
 
55
- Please follow the [installation](#installation) procedure and then run the following code:
44
+ Once you've installed the client, you'll want to confirm your API token is working correctly. We offer a "ping" endpoint for testing this and overall API healthiness:
45
+
56
46
  ```ruby
57
47
  # Load the gem
58
48
  require 'vantage-client'
59
49
 
60
- # Setup authorization
50
+ # Configure Vantage with your API token. Replace "YOUR_API_TOKEN" with the token you generate.
61
51
  Vantage.configure do |config|
62
- # Configure OAuth2 access token for authorization: oauth2
63
- config.access_token = 'YOUR ACCESS TOKEN'
52
+ config.access_token = 'YOUR_API_TOKEN'
64
53
  end
65
54
 
66
- api_instance = Vantage::PingApi.new
55
+ api_instance = Vantage::CostsApi.new
56
+
57
+ report_id = 'report_id_example' # String |
58
+
59
+ opts = {
60
+ start_date: 'start_date_example', # String | Query costs by the first date you would like to filter from. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00.
61
+ end_date: 'end_date_example' # String | Query costs by the last date you would like to filter to. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00.
62
+ }
67
63
 
68
64
  begin
69
- api_instance.ping
65
+ result = api_instance.get_costs(report_id, opts)
66
+ p result
70
67
  rescue Vantage::ApiError => e
71
- puts "Exception when calling PingApi->ping: #{e}"
68
+ puts "Exception when calling CostsApi->get_costs: #{e}"
69
+ end
70
+
71
+ # {
72
+ # :ping => "pong"
73
+ # }
74
+
75
+ ```
76
+
77
+ ## Getting EC2 Instance Information
78
+
79
+ Getting EC2 instance product information is one of the most used functions of the API. Here's an example of how to get product information for a c5.xlarge EC2 instance:
80
+
81
+ ```ruby
82
+
83
+ # Load the gem
84
+ require 'vantage-client'
85
+
86
+ # Configure Vantage with your API token. Replace "YOUR_API_TOKEN" with the token you generate.
87
+ Vantage.configure do |config|
88
+ config.access_token = 'YOUR_API_TOKEN'
72
89
  end
73
90
 
91
+ # The Vantage::PricesApi class helps get simple information
92
+ vantage_client = Vantage::PricesApi.new
93
+
94
+ # Find all instances with the instance type name of 'c5.xlarge'
95
+ response = vantage_client.get_products(name: 'c5.xlarge')
96
+
97
+ # See the entire response
98
+ puts response.products.first
99
+ # {
100
+ # :id=>"aws-ec2-c5_xlarge",
101
+ # :category=>"compute",
102
+ # :name=>"c5.xlarge",
103
+ # :service_id=>"aws-ec2",
104
+ # :provider_id=>"aws",
105
+ # :details=>{
106
+ # :gpu=>0,
107
+ # :name=>"C5 High-CPU Extra Large",
108
+ # :vcpu=>4,
109
+ # :memory=>8.0,
110
+ # :storage=>nil,
111
+ # :clock_speed_ghz=>3.0,
112
+ # :physical_processor_description=>"Intel Xeon Platinum 8124M",
113
+ # :network_performance_description=>"Up to 10 Gigabit"
114
+ # }
115
+ # }
116
+
74
117
  ```
75
118
 
76
- ## Documentation for API Endpoints
119
+ ## Getting EC2 Instance Pricing
120
+
121
+ Getting the price of an EC2 instance is also easy to do. Here's an example of how to get the price for a c5.xlarge. You'll need the product ID from the prior call to retrive prices. Note that Vantage will return all prices across all regions, platforms and lifecycle so client-side you'll want to filter for the appropriate region, platform and lifecycle.
122
+
123
+ The price returned in the example below will give you the **on-demand** price for a **linux** EC2 instance in **us-east-1**.
124
+
125
+ ```ruby
77
126
 
78
- All URIs are relative to *https://api.vantage.sh*
127
+ # Load the gem
128
+ require 'vantage-client'
79
129
 
80
- Class | Method | HTTP request | Description
81
- ------------ | ------------- | ------------- | -------------
82
- *Vantage::PingApi* | [**ping**](docs/PingApi.md#ping) | **GET** /v1/ping |
83
- *Vantage::PricesApi* | [**get_price**](docs/PricesApi.md#get_price) | **GET** /v1/products/{product_id}/prices/{id} |
84
- *Vantage::PricesApi* | [**get_prices**](docs/PricesApi.md#get_prices) | **GET** /v1/products/{product_id}/prices |
85
- *Vantage::PricesApi* | [**get_product**](docs/PricesApi.md#get_product) | **GET** /v1/products/{id} |
86
- *Vantage::PricesApi* | [**get_products**](docs/PricesApi.md#get_products) | **GET** /v1/products |
87
- *Vantage::PricesApi* | [**get_providers**](docs/PricesApi.md#get_providers) | **GET** /v1/providers |
88
- *Vantage::PricesApi* | [**get_services**](docs/PricesApi.md#get_services) | **GET** /v1/services |
130
+ # Configure Vantage with your API token. Replace "YOUR_API_TOKEN" with the token you generate.
131
+ Vantage.configure do |config|
132
+ config.access_token = 'YOUR_API_TOKEN'
133
+ end
89
134
 
135
+ # The Vantage::PricesApi class helps get simple information
136
+ vantage_client = Vantage::PricesApi.new
137
+
138
+ # Find all prices using the product ID returned in the previous example
139
+ # Note that this will return all prices across all regions and platform types by default.
140
+ response = vantage_client.get_prices('aws-ec2-c5_xlarge')
141
+
142
+ puts response.prices.first
143
+ # {
144
+ # :id=>"aws-ec2-c5_xlarge-us_east_1-on_demand-linux",
145
+ # :unit=>"hour",
146
+ # :region=>"us-east-1",
147
+ # :rate_type=>"compute",
148
+ # :currency=>"USD",
149
+ # :amount=>0.17,
150
+ # :details=>{
151
+ # :platform=>"linux",
152
+ # :lifecycle=>"on-demand"
153
+ # }
154
+ # }
155
+ ```
90
156
 
91
157
  ## Documentation for Models
92
158
 
159
+ - [Vantage::Cost](docs/Cost.md)
160
+ - [Vantage::Costs](docs/Costs.md)
93
161
  - [Vantage::Price](docs/Price.md)
94
162
  - [Vantage::Prices](docs/Prices.md)
95
163
  - [Vantage::Product](docs/Product.md)
96
164
  - [Vantage::Products](docs/Products.md)
97
165
  - [Vantage::Provider](docs/Provider.md)
98
166
  - [Vantage::Providers](docs/Providers.md)
167
+ - [Vantage::Report](docs/Report.md)
168
+ - [Vantage::Reports](docs/Reports.md)
99
169
  - [Vantage::Service](docs/Service.md)
100
170
  - [Vantage::Services](docs/Services.md)
101
171
 
102
-
103
- ## Documentation for Authorization
104
-
105
-
106
- ### oauth2
107
-
108
- - **Type**: OAuth
109
- - **Flow**: application
110
- - **Authorization URL**:
111
- - **Scopes**:
112
- - read: Grants read access
113
-
data/docs/Cost.md ADDED
@@ -0,0 +1,11 @@
1
+ # Vantage::Cost
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **accrued_at** | **String** | The date the cost was accrued. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00. | [optional]
7
+ **amount** | **String** | The amount of the cost. | [optional]
8
+ **provider** | **String** | The service provider where the cost was incurred. e.g. AWS | [optional]
9
+ **service** | **String** | The service which incurred the cost. e.g. Amazon ElastiCache | [optional]
10
+
11
+
data/docs/Costs.md ADDED
@@ -0,0 +1,11 @@
1
+ # Vantage::Costs
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **links** | **Object** | | [optional]
7
+ **total** | **String** | The sum of all amounts of costs for the entire report for the requested period. | [optional]
8
+ **currency** | **String** | The currency both the total and cost amount values are represented in. e.g. USD | [optional]
9
+ **costs** | [**Array<Cost>**](Cost.md) | | [optional]
10
+
11
+
data/docs/CostsApi.md ADDED
@@ -0,0 +1,177 @@
1
+ # Vantage::CostsApi
2
+
3
+ All URIs are relative to *https://api.vantage.sh*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**get_costs**](CostsApi.md#get_costs) | **GET** /v1/reports/{report_id}/costs |
8
+ [**get_report**](CostsApi.md#get_report) | **GET** /v1/reports/{report_id} |
9
+ [**get_reports**](CostsApi.md#get_reports) | **GET** /v1/reports |
10
+
11
+
12
+ # **get_costs**
13
+ > Costs get_costs(report_id, opts)
14
+
15
+
16
+
17
+ Return available Costs for the specified Cost Report and optional time period. If no time period is specified it will return all available costs for the report.
18
+
19
+ ### Example
20
+ ```ruby
21
+ # load the gem
22
+ require 'vantage-client'
23
+ # setup authorization
24
+ Vantage.configure do |config|
25
+ # Configure OAuth2 access token for authorization: oauth2
26
+ config.access_token = 'YOUR ACCESS TOKEN'
27
+ end
28
+
29
+ api_instance = Vantage::CostsApi.new
30
+
31
+ report_id = 'report_id_example' # String |
32
+
33
+ opts = {
34
+ start_date: 'start_date_example', # String | Query costs by the first date you would like to filter from. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00.
35
+ end_date: 'end_date_example', # String | Query costs by the last date you would like to filter to. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00.
36
+ page: 2, # Integer | The page of results to return.
37
+ limit: 500 # Integer | The amount of results to return. The maximum is 1000
38
+ }
39
+
40
+ begin
41
+ result = api_instance.get_costs(report_id, opts)
42
+ p result
43
+ rescue Vantage::ApiError => e
44
+ puts "Exception when calling CostsApi->get_costs: #{e}"
45
+ end
46
+ ```
47
+
48
+ ### Parameters
49
+
50
+ Name | Type | Description | Notes
51
+ ------------- | ------------- | ------------- | -------------
52
+ **report_id** | **String**| |
53
+ **start_date** | **String**| Query costs by the first date you would like to filter from. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00. | [optional]
54
+ **end_date** | **String**| Query costs by the last date you would like to filter to. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T19:20:48+00:00. | [optional]
55
+ **page** | **Integer**| The page of results to return. | [optional]
56
+ **limit** | **Integer**| The amount of results to return. The maximum is 1000 | [optional]
57
+
58
+ ### Return type
59
+
60
+ [**Costs**](Costs.md)
61
+
62
+ ### Authorization
63
+
64
+ [oauth2](../README.md#oauth2)
65
+
66
+ ### HTTP request headers
67
+
68
+ - **Content-Type**: Not defined
69
+ - **Accept**: application/json
70
+
71
+
72
+
73
+ # **get_report**
74
+ > Report get_report(report_id)
75
+
76
+
77
+
78
+ Return a Cost Report.
79
+
80
+ ### Example
81
+ ```ruby
82
+ # load the gem
83
+ require 'vantage-client'
84
+ # setup authorization
85
+ Vantage.configure do |config|
86
+ # Configure OAuth2 access token for authorization: oauth2
87
+ config.access_token = 'YOUR ACCESS TOKEN'
88
+ end
89
+
90
+ api_instance = Vantage::CostsApi.new
91
+
92
+ report_id = 'report_id_example' # String |
93
+
94
+
95
+ begin
96
+ result = api_instance.get_report(report_id)
97
+ p result
98
+ rescue Vantage::ApiError => e
99
+ puts "Exception when calling CostsApi->get_report: #{e}"
100
+ end
101
+ ```
102
+
103
+ ### Parameters
104
+
105
+ Name | Type | Description | Notes
106
+ ------------- | ------------- | ------------- | -------------
107
+ **report_id** | **String**| |
108
+
109
+ ### Return type
110
+
111
+ [**Report**](Report.md)
112
+
113
+ ### Authorization
114
+
115
+ [oauth2](../README.md#oauth2)
116
+
117
+ ### HTTP request headers
118
+
119
+ - **Content-Type**: Not defined
120
+ - **Accept**: application/json
121
+
122
+
123
+
124
+ # **get_reports**
125
+ > Reports get_reports(opts)
126
+
127
+
128
+
129
+ Return all Cost Reports.
130
+
131
+ ### Example
132
+ ```ruby
133
+ # load the gem
134
+ require 'vantage-client'
135
+ # setup authorization
136
+ Vantage.configure do |config|
137
+ # Configure OAuth2 access token for authorization: oauth2
138
+ config.access_token = 'YOUR ACCESS TOKEN'
139
+ end
140
+
141
+ api_instance = Vantage::CostsApi.new
142
+
143
+ opts = {
144
+ page: 2, # Integer | The page of results to return.
145
+ limit: 500 # Integer | The amount of results to return. The maximum is 1000
146
+ }
147
+
148
+ begin
149
+ result = api_instance.get_reports(opts)
150
+ p result
151
+ rescue Vantage::ApiError => e
152
+ puts "Exception when calling CostsApi->get_reports: #{e}"
153
+ end
154
+ ```
155
+
156
+ ### Parameters
157
+
158
+ Name | Type | Description | Notes
159
+ ------------- | ------------- | ------------- | -------------
160
+ **page** | **Integer**| The page of results to return. | [optional]
161
+ **limit** | **Integer**| The amount of results to return. The maximum is 1000 | [optional]
162
+
163
+ ### Return type
164
+
165
+ [**Reports**](Reports.md)
166
+
167
+ ### Authorization
168
+
169
+ [oauth2](../README.md#oauth2)
170
+
171
+ ### HTTP request headers
172
+
173
+ - **Content-Type**: Not defined
174
+ - **Accept**: application/json
175
+
176
+
177
+
data/docs/PingApi.md CHANGED
@@ -12,7 +12,7 @@ Method | HTTP request | Description
12
12
 
13
13
 
14
14
 
15
- This is a health check endpoint that can be used to determine Vantage API healthiness. It will return a 200 success with the raw text of \"pong\" if everything is running smoothly.
15
+ This is a health check endpoint that can be used to determine Vantage API healthiness. It will return 200 if everything is running smoothly.
16
16
 
17
17
  ### Example
18
18
  ```ruby
data/docs/PricesApi.md CHANGED
@@ -67,7 +67,7 @@ Name | Type | Description | Notes
67
67
 
68
68
 
69
69
  # **get_prices**
70
- > Prices get_prices(product_id)
70
+ > Prices get_prices(product_id, opts)
71
71
 
72
72
 
73
73
 
@@ -87,9 +87,13 @@ api_instance = Vantage::PricesApi.new
87
87
 
88
88
  product_id = 'product_id_example' # String |
89
89
 
90
+ opts = {
91
+ page: 2, # Integer | The page of results to return.
92
+ limit: 500 # Integer | The amount of results to return. The maximum is 1000
93
+ }
90
94
 
91
95
  begin
92
- result = api_instance.get_prices(product_id)
96
+ result = api_instance.get_prices(product_id, opts)
93
97
  p result
94
98
  rescue Vantage::ApiError => e
95
99
  puts "Exception when calling PricesApi->get_prices: #{e}"
@@ -101,6 +105,8 @@ end
101
105
  Name | Type | Description | Notes
102
106
  ------------- | ------------- | ------------- | -------------
103
107
  **product_id** | **String**| |
108
+ **page** | **Integer**| The page of results to return. | [optional]
109
+ **limit** | **Integer**| The amount of results to return. The maximum is 1000 | [optional]
104
110
 
105
111
  ### Return type
106
112
 
@@ -190,7 +196,9 @@ api_instance = Vantage::PricesApi.new
190
196
  opts = {
191
197
  provider_id: 'provider_id_example', # String | Query by Provider to list all Products across all Services for a Provider. e.g. aws
192
198
  service_id: 'service_id_example', # String | Query by Service to list all Products for a specific provider service. e.g. aws-ec2
193
- name: 'name_example' # String | Query by name of the Product to see a list of products which match that name. e.g. m5a.16xlarge
199
+ name: 'name_example', # String | Query by name of the Product to see a list of products which match that name. e.g. m5a.16xlarge
200
+ page: 2, # Integer | The page of results to return.
201
+ limit: 500 # Integer | The amount of results to return. The maximum is 1000
194
202
  }
195
203
 
196
204
  begin
@@ -208,6 +216,8 @@ Name | Type | Description | Notes
208
216
  **provider_id** | **String**| Query by Provider to list all Products across all Services for a Provider. e.g. aws | [optional]
209
217
  **service_id** | **String**| Query by Service to list all Products for a specific provider service. e.g. aws-ec2 | [optional]
210
218
  **name** | **String**| Query by name of the Product to see a list of products which match that name. e.g. m5a.16xlarge | [optional]
219
+ **page** | **Integer**| The page of results to return. | [optional]
220
+ **limit** | **Integer**| The amount of results to return. The maximum is 1000 | [optional]
211
221
 
212
222
  ### Return type
213
223
 
@@ -225,7 +235,7 @@ Name | Type | Description | Notes
225
235
 
226
236
 
227
237
  # **get_providers**
228
- > Providers get_providers
238
+ > Providers get_providers(opts)
229
239
 
230
240
 
231
241
 
@@ -243,8 +253,13 @@ end
243
253
 
244
254
  api_instance = Vantage::PricesApi.new
245
255
 
256
+ opts = {
257
+ page: 2, # Integer | The page of results to return.
258
+ limit: 500 # Integer | The amount of results to return. The maximum is 1000
259
+ }
260
+
246
261
  begin
247
- result = api_instance.get_providers
262
+ result = api_instance.get_providers(opts)
248
263
  p result
249
264
  rescue Vantage::ApiError => e
250
265
  puts "Exception when calling PricesApi->get_providers: #{e}"
@@ -252,7 +267,11 @@ end
252
267
  ```
253
268
 
254
269
  ### Parameters
255
- This endpoint does not need any parameter.
270
+
271
+ Name | Type | Description | Notes
272
+ ------------- | ------------- | ------------- | -------------
273
+ **page** | **Integer**| The page of results to return. | [optional]
274
+ **limit** | **Integer**| The amount of results to return. The maximum is 1000 | [optional]
256
275
 
257
276
  ### Return type
258
277
 
@@ -289,7 +308,9 @@ end
289
308
  api_instance = Vantage::PricesApi.new
290
309
 
291
310
  opts = {
292
- provider_id: 'provider_id_example' # String | Query services for a specific provider. e.g. aws
311
+ provider_id: 'provider_id_example', # String | Query services for a specific provider. e.g. aws
312
+ page: 2, # Integer | The page of results to return.
313
+ limit: 500 # Integer | The amount of results to return. The maximum is 1000
293
314
  }
294
315
 
295
316
  begin
@@ -305,6 +326,8 @@ end
305
326
  Name | Type | Description | Notes
306
327
  ------------- | ------------- | ------------- | -------------
307
328
  **provider_id** | **String**| Query services for a specific provider. e.g. aws | [optional]
329
+ **page** | **Integer**| The page of results to return. | [optional]
330
+ **limit** | **Integer**| The amount of results to return. The maximum is 1000 | [optional]
308
331
 
309
332
  ### Return type
310
333
 
data/docs/Report.md ADDED
@@ -0,0 +1,13 @@
1
+ # Vantage::Report
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **id** | **String** | | [optional]
7
+ **title** | **String** | The title of the cost report. | [optional]
8
+ **earliest_cost_date** | **String** | The date and time, in UTC, the report was created. ISO 8601 Formatted - 2021-01-01 or 2021-01-01T00:00:00Z. | [optional]
9
+ **latest_cost_date** | **String** | The date and time, in UTC, the report was created. ISO 8601 Formatted - 2021-07-31 or 2021-07-31T00:00:00Z. | [optional]
10
+ **created_at** | **String** | The date and time, in UTC, the report was created. ISO 8601 Formatted - 2021-07-15 or 2021-07-15T00:00:00Z. | [optional]
11
+ **workspace** | **String** | The name of the workspace the report is a part of. | [optional]
12
+
13
+
data/docs/Reports.md ADDED
@@ -0,0 +1,9 @@
1
+ # Vantage::Reports
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **links** | **Object** | | [optional]
7
+ **reports** | [**Array<Report>**](Report.md) | | [optional]
8
+
9
+