> For the complete documentation index, see [llms.txt](https://cloudforet.gitbook.io/cloudforet-apis/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cloudforet.gitbook.io/cloudforet-apis/content/en/cost_analysis/v1/cost.md).

# Cost

A Cost is a resource of raw cost data collected by the cost\_analysis.DataSource.

> **Package : spaceone.api.cost\_analysis.v1**

\ <br>

## Cost

**Cost Methods:**

| Method                                                                                                                 | Request                                                                                                                                | Response                                                                                                               |
| ---------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| [**create**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#create)   | [CreateCostRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#createcostrequest) | [CostInfo](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costinfo)   |
| [**delete**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#delete)   | [CostRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costrequest)             | [Empty](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#empty)         |
| [**get**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#get)         | [CostRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costrequest)             | [CostInfo](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costinfo)   |
| [**list**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#list)       | [CostQuery](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costquery)                 | [CostsInfo](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costsinfo) |
| [**analyze**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#analyze) | [CostAnalyzeQuery](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costanalyzequery)   | [Struct](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#struct)       |
| [**stat**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#stat)       | [CostStatQuery](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#coststatquery)         | [Struct](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#struct)       |

<br>

### create

Creates a new Cost. When creating a Cost, if the parameter `provider` is not entered, the default value of the parameter will be the provider information of the DataSource which collected the raw data of the Cost from the provider. The parameter `billed_at` is the data of when the cost is billed. While the DataSource collects the cost data, if the `billed_at` data does not exist, the value will be replaced with the `created_at` data indicating when the Cost is created. If the cost data collected is based on USD, the Cost is created without the currency exchange.

> **POST** /cost-analysis/v1/cost/create

{{< tabs " create " >}}

{{< tab "Request Example" >}}

[CreateCostRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#createcostrequest)

* **cost** (double) `Required`
* **project\_id** (string) `Required`
* **data\_source\_id** (string) `Required`
* **billed\_date** (string) `Required`
* **usage\_quantity** (double)
* **usage\_unit** (float)
* **provider** (string)
* **region\_code** (string)
* **product** (string)
* **usage\_type** (string)
* **resource** (string)
* **tags** (Struct)
* **additional\_info** (Struct)
* **service\_account\_id** (string)

{{< highlight json >}} { "cost": 142, "usage\_quantity": 84532, "usage\_unit": "GB", "provider": "aws", "region\_code": "ap-northeast-1", "product": "AWSDataTransfer", "account": "722069360300", "usage\_type": "data-transfer.out", "additional\_info": { "raw\_usage\_type": "APN1-DataTransfer-Out-Bytes" }, "tags": { "Environment": "Dev" }, "data\_source\_id": "ds-fcba92ca73b1" } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

[CostInfo](#COSTINFO)

* **cost\_id** (string) `Required`
* **cost** (double) `Required`
* **usage\_quantity** (double) `Required`
* **usage\_unit** (string) `Required`
* **provider** (string) `Required`
* **region\_code** (string) `Required`
* **region\_key** (string) `Required`
* **product** (string) `Required`
* **usage\_type** (string) `Required`
* **resource** (string) `Required`
* **tags** (Struct) `Required`
* **additional\_info** (Struct) `Required`
* **data** (Struct) `Required`
* **domain\_id** (string) `Required`
* **workspace\_id** (string) `Required`
* **project\_id** (string) `Required`
* **service\_account\_id** (string) `Required`
* **data\_source\_id** (string) `Required`
* **account\_id** (string) `Required`
* **billed\_year** (string) `Required`
* **billed\_month** (string) `Required`
* **billed\_date** (string) `Required`

{{< highlight json >}} { "cost\_id": "cost-c5aae7712ec9", "cost": 142, "usage\_quantity": 84532, "usage\_unit": "GB", "provider": "aws", "region\_code": "ap-northeast-1", "product": "AWSDataTransfer", "usage\_type": "data-transfer.out", "additional\_info": { "raw\_usage\_type": "APN1-DataTransfer-Out-Bytes" }, "tags": { "Environment": "Dev" }, "data\_source\_id": "ds-fcba92ca73b1" "domain\_id": "domain-58010aa2e451", "billed\_year": "2022", "billed\_month": "2022-07", "billed\_date": "2022-07-19" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

<br>

### delete

Deletes a specific Cost. You must specify the `cost_id` of the Cost to delete.

> **POST** /cost-analysis/v1/cost/delete

{{< tabs " delete " >}}

{{< tab "Request Example" >}}

[CostRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costrequest)

* **cost\_id** (string) `Required`

{{< highlight json >}} { "cost\_id": "cost-2ad052ed03d7" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

<br>

### get

Gets a specific Cost. Prints detailed information about the Cost, including `region_code` and `account`.

> **POST** /cost-analysis/v1/cost/get

{{< tabs " get " >}}

{{< tab "Request Example" >}}

[CostRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costrequest)

* **cost\_id** (string) `Required`

{{< highlight json >}} { "cost\_id": "cost-2ad052ed03d7" } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

[CostInfo](#COSTINFO)

* **cost\_id** (string) `Required`
* **cost** (double) `Required`
* **usage\_quantity** (double) `Required`
* **usage\_unit** (string) `Required`
* **provider** (string) `Required`
* **region\_code** (string) `Required`
* **region\_key** (string) `Required`
* **product** (string) `Required`
* **usage\_type** (string) `Required`
* **resource** (string) `Required`
* **tags** (Struct) `Required`
* **additional\_info** (Struct) `Required`
* **data** (Struct) `Required`
* **domain\_id** (string) `Required`
* **workspace\_id** (string) `Required`
* **project\_id** (string) `Required`
* **service\_account\_id** (string) `Required`
* **data\_source\_id** (string) `Required`
* **account\_id** (string) `Required`
* **billed\_year** (string) `Required`
* **billed\_month** (string) `Required`
* **billed\_date** (string) `Required`

{{< highlight json >}} { "cost\_id": "cost-c5aae7712ec9", "cost": 142, "usage\_quantity": 84532, "usage\_unit": "GB", "provider": "aws", "region\_code": "ap-northeast-1", "product": "AWSDataTransfer", "usage\_type": "data-transfer.out", "additional\_info": { "raw\_usage\_type": "APN1-DataTransfer-Out-Bytes" }, "tags": { "Environment": "Dev" }, "data\_source\_id": "ds-fcba92ca73b1" "domain\_id": "domain-58010aa2e451", "billed\_year": "2022", "billed\_month": "2022-07", "billed\_date": "2022-07-19" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

<br>

### list

Gets a list of all Costs. You can use a query to get a filtered list of Costs.

> **POST** /cost-analysis/v1/cost/list

{{< tabs " list " >}}

{{< tab "Request Example" >}}

[CostQuery](https://github.com/cloudforet-io/api-doc/blob/master/content/en/cost_analysis/v1/Cost/README.md#costquery)

* **data\_source\_id** (string) `Required`
* **query** (Query)
* **cost\_id** (string)
* **provider** (string)
* **region\_code** (string)
* **region\_key** (string)
* **product** (string)
* **usage\_type** (string)
* **resource** (string)
* **workspace\_id** (string)
* **project\_id** (string)
* **project\_group\_id** (string)
* **service\_account\_id** (string)
* **billed\_year** (string)
* **billed\_month** (string)
* **billed\_date** (string)

{{< highlight json >}} { "query": {} } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

[CostsInfo](#COSTSINFO)

* **results** (CostInfo) `Repeated` `Required`
* **total\_count** (int32) `Required`

{{< highlight json >}} { "results": \[ { "cost\_id": "cost-c5aae7712ec9", "cost": 142, "usage\_quantity": 84532, "usage\_unit": "GB", "provider": "aws", "region\_code": "ap-northeast-1", "product": "AWSDataTransfer", "usage\_type": "data-transfer.out", "additional\_info": { "raw\_usage\_type": "APN1-DataTransfer-Out-Bytes" }, "tags": { "Environment": "Dev" }, "data\_source\_id": "ds-fcba92ca73b1" "domain\_id": "domain-58010aa2e451", "billed\_year": "2022", "billed\_month": "2022-07", "billed\_date": "2022-07-19" }, { "cost\_id": "cost-1d5e1b0dbf82", "cost": 78, "usage\_quantity": 34523, "usage\_unit": "Count", "provider": "aws", "region\_code": "ap-northeast-1", "product": "AWSQueueService" "additional\_info": { "raw\_usage\_type": "APN1-Requests-Tier1" }, "tags": {}, "data\_source\_id": "ds-fcba92ca73b1", "domain\_id": "domain-58010aa2e451", "billed\_year": "2022", "billed\_month": "2022-07", "billed\_date": "2022-07-20" } ], "total\_count": 307066 } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

<br>

### analyze

Gets the Cost information of specific `product`s based on the time granularity: `DAILY`, `MONTHLY`, or `ACCUMULATED`. For `DAILY` granularity, this method can get the Cost data of at most 31 days. For `MONTHLY` or `ACCUMULATED` granularity, this method can get the Cost data of at most 12 months.

> **POST** /cost-analysis/v1/cost/analyze

<br>

### stat

> **POST** /cost-analysis/v1/cost/stat

\ <br>

## Message

### CostAnalyzeQuery

* **query** (TimeSeriesAnalyzeQuery) `Required`
* **data\_source\_id** (string) `Required`

  <br>

### CostInfo

* **cost\_id** (string) `Required`
* **cost** (double) `Required`
* **usage\_quantity** (double) `Required`
* **usage\_unit** (string) `Required`
* **provider** (string) `Required`
* **region\_code** (string) `Required`
* **region\_key** (string) `Required`
* **product** (string) `Required`
* **usage\_type** (string) `Required`
* **resource** (string) `Required`
* **tags** (Struct) `Required`
* **additional\_info** (Struct) `Required`
* **data** (Struct) `Required`
* **domain\_id** (string) `Required`
* **workspace\_id** (string) `Required`
* **project\_id** (string) `Required`
* **service\_account\_id** (string) `Required`
* **data\_source\_id** (string) `Required`
* **account\_id** (string) `Required`
* **billed\_year** (string) `Required`
* **billed\_month** (string) `Required`
* **billed\_date** (string) `Required`

  <br>

### CostQuery

* **data\_source\_id** (string) `Required`
* **query** (Query)
* **cost\_id** (string)
* **provider** (string)
* **region\_code** (string)
* **region\_key** (string)
* **product** (string)
* **usage\_type** (string)
* **resource** (string)
* **workspace\_id** (string)
* **project\_id** (string)
* **project\_group\_id** (string)
* **service\_account\_id** (string)
* **billed\_year** (string)
* **billed\_month** (string)
* **billed\_date** (string)

  <br>

### CostRequest

* **cost\_id** (string) `Required`

  <br>

### CostStatQuery

* **query** (StatisticsQuery) `Required`
* **data\_source\_id** (string)

  <br>

### CostsInfo

* **results** (CostInfo) `Repeated` `Required`
* **total\_count** (int32) `Required`

  <br>

### CreateCostRequest

* **cost** (double) `Required`
* **project\_id** (string) `Required`
* **data\_source\_id** (string) `Required`
* **billed\_date** (string) `Required`
* **usage\_quantity** (double)
* **usage\_unit** (float)
* **provider** (string)
* **region\_code** (string)
* **product** (string)
* **usage\_type** (string)
* **resource** (string)
* **tags** (Struct)
* **additional\_info** (Struct)
* **service\_account\_id** (string)

  <br>
