{
  "openapi": "3.0.0",
  "info": {
    "description": "## Introduction\n\nThe IBM Cloud® Usage Reports API provides details about the usage quantity and cost of resources in an account. Usage details are reported by the month in which they were incurred. Usage quantities and their corresponding costs are aggregated at the following levels:\n\n* Individual resource instances\n* Cloud Foundry organization or resource group\n* Entire account (all resources)\n\nSDKs for Java, Node, Python, and Go are available to make it easier to programmatically access the API from your code. The client libraries that are provided by the SDKs implement best practices for using the API and reduce the amount of code that you need to write. The tab for each language includes code examples that demonstrate how to use the client libraries. For more information about using the SDKs, see the [IBM Cloud SDK Common project](https://github.com/IBM/ibm-cloud-sdk-common) on GitHub.\n\nInstalling the Java SDK\n\nMaven\n\n```xml\n<dependency>\n    <groupId>com.ibm.cloud</groupId>\n    <artifactId>usage-reports</artifactId>\n    <version>${version}</version>\n</dependency>\n```\n\nGradle\n\n```java\ncompile 'com.ibm.cloud:usage-reports:{version}'\n```\n\nFor more installation options, view this project in GitHub.\nhttps://github.com/IBM/platform-services-java-sdk\n\nInstalling the Go SDK\n\n```bash\ngo get -u github.com/IBM/platform-services-go-sdk/usagereportsv4\n```\n\nFor more installation options, view this project in GitHub.\nhttps://github.com/IBM/platform-services-go-sdk\n\nInstalling the Node SDK\n\n```bash\nnpm install @ibm-cloud/platform-services\n```\n\nFor more installation options, view this project in GitHub.\nhttps://github.com/IBM/platform-services-node-sdk\n\nInstalling the Python SDK\n\n```bash\npip install --upgrade \"ibm-platform-services\"\n```\n\nFor more installation options, view this project in GitHub.\nhttps://github.com/IBM/platform-services-python-sdk\n\n## Endpoint URLs\n\nThe Usage Reports API uses the following global endpoint URL for all regions. When you call the API, add the path for each method to form the complete API endpoint for your requests.\n\n```\nhttps://billing.cloud.ibm.com\n```\n\nIf you enabled service endpoints in your account, you can send API requests over the IBM Cloud® private network at the following base endpoint URLs. For more information, see [Enabling VRF and service endpoints](https://cloud.ibm.com/docs/account?topic=account-vrf-service-endpoint).\n\n* Private endpoint URL for VPC infrastructure: `https://private.billing.cloud.ibm.com`\n* Private endpoint URLs for classic infrastructure:\n    * Dallas: `https://private.us-south.billing.cloud.ibm.com`\n    * Washington DC: `https://private.us-east.billing.cloud.ibm.com`\n\n## Authentication\n\nAuthorization to the Usage Reports API is enforced by using an IBM Cloud Identity and Access Management (IAM) access token. The token is used to determine the actions that a user or service ID has access to when they use the API.\n\nObtaining an IAM token for an authenticated user or service ID is described in the [IAM Identity Services API](https://cloud.ibm.com/apidocs/iam-identity-token-api) documentation. \n\nTo use the API, add a valid IAM token to the HTTP Authorization request header, for example, `-H 'Authorization: Bearer <TOKEN>'`.\n\nWhen you use the SDK, configure an IAM authenticator with the IAM API key. The authenticator automatically obtains the IAM access token for the API key and includes it with each request. You can construct an authenticator in either of two ways:\n\n- Programmatically by constructing an IAM authenticator instance and supplying your IAM API key \n- By defining the API key in external configuration properties and then using the SDK authenticator factory to construct an IAM authenticator that uses the configured IAM API key\n\nIn this example of using external configuration properties, an IAM authenticator instance is created with the configured API key, and then the service client is constructed with this authenticator instance and the configured service URL.\n\nFor more information, see the Authentication section of the [IBM Cloud SDK Common](https://github.com/IBM/ibm-cloud-sdk-common/blob/main/README.md) documentation.\n\nTo call each method, you'll need to be assigned a role that includes the required IAM actions. Each method lists the associated action. For more information about IAM actions and how they map to roles, see [Assigning access to account management services](https://cloud.ibm.com/docs/account?topic=account-account-services).\n\nTo retrieve your access token:\n\n```bash\ncurl -X POST \\\n  \"https://iam.cloud.ibm.com/identity/token\" \\\n  --header 'Content-Type: application/x-www-form-urlencoded' \\\n  --header 'Accept: application/json' \\\n  --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \\\n  --data-urlencode 'apikey=<API_KEY>'\n```\n\nReplace `<API_KEY>` with your IAM API key.\n\nSetting client options through external configuration\n\nExample environment variables, where `<SERVICE_URL>` is the endpoint URL and `<API_KEY>` is your IAM API key\n```sh\nexport USAGE_REPORTS_URL=<SERVICE_URL>\nexport USAGE_REPORTS_AUTHTYPE=iam\nexport USAGE_REPORTS_APIKEY=<API_KEY>\n```\n\nExample of constructing the service client\n```go\nimport {\n    \"github.com/IBM/platform-services-go-sdk/usagereportsv4\"\n}\n...\nserviceClientOptions := &usagereportsv4.UsageReportsV4Options{}\nserviceClient, err := usagereportsv4.NewUsageReportsV4UsingExternalConfig(serviceClientOptions)\n```\n\nSetting client options through external configuration\n\nExample environment variables, where `<SERVICE_URL>` is the endpoint URL and `<API_KEY>` is your IAM API key\n```sh\nexport USAGE_REPORTS_URL=<SERVICE_URL>\nexport USAGE_REPORTS_AUTHTYPE=iam\nexport USAGE_REPORTS_APIKEY=<API_KEY>\n```\n\nExample of constructing the service client\n```java\nimport com.ibm.cloud.platform_services.usage_reports.v4.UsageReports;\n...\nUsageReports serviceClient = UsageReports.newInstance();\n```\n\nSetting client options through external configuration\n\nExample environment variables, where `<SERVICE_URL>` is the endpoint URL and `<API_KEY>` is your IAM API key\n```sh\nexport USAGE_REPORTS_URL=<SERVICE_URL>\nexport USAGE_REPORTS_AUTHTYPE=iam\nexport USAGE_REPORTS_APIKEY=<API_KEY>\n```\n\nExample of constructing the service client\n```javascript\nconst UsageReportsV4 = require('@ibm-cloud/platform-services/usage-reports/v4');\n...\nconst serviceClient = UsageReportsV4.newInstance({});\n```\n\nSetting client options through external configuration\n\nExample environment variables, where `<SERVICE_URL>` is the endpoint URL and `<API_KEY>` is your IAM API key\n```sh\nexport USAGE_REPORTS_URL=<SERVICE_URL>\nexport USAGE_REPORTS_AUTHTYPE=iam\nexport USAGE_REPORTS_APIKEY=<API_KEY>\n```\n\nExample of constructing the service client\n```python\nfrom ibm_platform_services import UsageReportsV4\n...\nservice_client = UsageReportsV4.new_instance()\n```\n\n## Auditing \n\nYou can monitor API activity within your account by using the IBM Cloud Activity Tracker service. When an API method is called, an event is generated that you can then track and audit from within Activity Tracker. The specific event type is listed for each individual method.\n\nFor more information about how to track Account and Billing activity, see [Auditing events for account management](https://cloud.ibm.com/docs/Activity-Tracker-with-LogDNA?topic=Activity-Tracker-with-LogDNA-at_events_acc_mgt).\n\n## Error handling\n\nThis API uses standard HTTP response codes to indicate whether a method completed successfully. A `200` response indicates success. A `400` type response indicates a failure, and a `500` type response indicates an internal system error.\n\n| HTTP Error Code | Description | Recovery |\n|-----------------|-------------|----------|\n| `200` | Success | The request was successful. |\n| `400` | Bad Request | The input parameters in the request body are either incomplete or in the wrong format. Be sure to include all required parameters in your request. |\n| `401` | Unauthorized | You are not authorized to make this request. Log in to IBM Cloud and try again. If this error persists, contact the account owner to check your permissions.\t|\n| `403` | Forbidden | The supplied authentication is not authorized to access '{namespace}'. |\n| `404` | Not Found | The requested resource could not be found. |\n| `409` | Conflict | The entity is already in the requested state. |\n| `410` | Gone | The resource is valid but has been removed already in a previous call |\n| `500` | Internal Server Error | *offering_name* is currently unavailable. Your request could not be processed. Wait a few minutes and try again. |",
    "version": "4.0.6",
    "title": "Usage Reports",
    "contact": {
      "name": "Rajkiran Ramachandran Balasubramanian",
      "email": "rajkiranrbala@us.ibm.com"
    },
    "x-alternate-name": "Usage Reports",
    "x-codegen-config": {
      "java": {
        "apiPackage": "com.ibm.cloud.platform_services"
      },
      "go": {
        "apiPackage": "github.com/IBM/platform-services-go-sdk",
        "improvedNameFormattingV2": true
      },
      "python": {
        "apiPackage": "ibm_platform_services"
      }
    },
    "x-sdk-supported-languages": [
      "curl",
      "go",
      "java",
      "node",
      "python"
    ],
    "x-github": "https://github.ibm.com/cloud-api-docs/billing",
    "x-github-issues": "https://github.ibm.com/cloud-api-docs/billing/issues/new",
    "x-last-updated": "2025-09-25"
  },
  "servers": [
    {
      "url": "https://billing.cloud.ibm.com",
      "description": "Production"
    },
    {
      "url": "https://billing.test.cloud.ibm.com",
      "description": "Staging"
    }
  ],
  "security": [
    {
      "IAM": []
    }
  ],
  "tags": [
    {
      "name": "Account operations",
      "description": "Operations related to account usage information."
    },
    {
      "name": "Resource operations",
      "description": "Operations related to resource usage information."
    },
    {
      "name": "Organization operations",
      "description": "Operations related to organization usage information."
    },
    {
      "name": "Billing reports snapshot",
      "description": "Operations related to billing reports snapshot."
    }
  ],
  "paths": {
    "/v4/accounts/{account_id}/summary/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get account summary",
        "operationId": "get_account_summary",
        "description": "Returns the summary for the account for a given month. Account billing managers are authorized to access this report.",
        "tags": [
          "Account operations"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.account-summary.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": "Calling the method generates ```billing.account-summary.read``` auditing event.",
          "events": [
            {
              "name": "billing.account-summary.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Account summary was returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Account_Summary"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"account_id\": \"test-account\",\n  \"month\": \"2017-08\",\n  \"resources\": {\n    \"billable_cost\": 52.829999980555556,\n    \"non_billable_cost\": 0\n  },\n  \"offers\": [\n    {\n      \"offer_id\": \"offer1\",\n      \"credits_total\": 4576,\n      \"offer_template\": \"\",\n      \"valid_from\": \"2017-01-09T00:00:00.000Z\",\n      \"expires_on\": \"2017-08-31T00:00:00.000Z\",\n      \"is_recurring\": false,\n      \"credits\": {\n        \"starting_balance\": 4500.26754230695,\n        \"balance\": 4447.437542326395,\n        \"used\": 52.829999980555556\n      }\n    }\n  ],\n  \"subscription\": {\n    \"overage\": 0,\n    \"subscriptions\": [\n      {\n        \"subscription_id\": \"sub1\",\n        \"charge_agreement_number\": \"0123445\",\n        \"type\": \"SUBSCRIPTION\",\n        \"subscription_amount\": 100,\n        \"start\": \"2017-02-24T14:07:04.883Z\",\n        \"end\": \"2019-01-24T14:07:04.882Z\",\n        \"terms\": [\n          {\n            \"start\": \"2017-02-24T14:07:04.883Z\",\n            \"end\": \"2018-02-24T14:07:04.000Z\",\n            \"credits\": {\n              \"total\": 1200,\n              \"starting_balance\": 1200,\n              \"used\": 0,\n              \"balance\": 1200\n            }\n          },\n          {\n            \"start\": \"2018-02-24T14:07:04.000Z\",\n            \"end\": \"2019-01-24T14:07:04.882Z\",\n            \"credits\": {\n              \"total\": 1100,\n              \"starting_balance\": 1100,\n              \"used\": 0,\n              \"balance\": 1100\n            }\n          }\n        ],\n        \"credits_total\": 2300\n      }\n    ]\n  },\n  \"support\": [\n    {\n      \"cost\": 10000,\n      \"type\": \"PREMIUM\",\n      \"overage\": 0\n    }\n  ],\n  \"billing_country_code\": \"USA\",\n  \"billing_currency_code\": \"USD\"\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid parameters",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Account Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/summary/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getAccountSummaryOptions := usageReportsService.NewGetAccountSummaryOptions(\n",
                      "  accountID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "accountSummary, response, err := usageReportsService.GetAccountSummary(getAccountSummaryOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(accountSummary, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetAccountSummaryOptions getAccountSummaryOptions = new GetAccountSummaryOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<AccountSummary> response = service.getAccountSummary(getAccountSummaryOptions).execute();\n",
                      "AccountSummary accountSummary = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getAccountSummary() result:\\n\" + accountSummary.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getAccountSummary(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "account_summary = usage_reports_service.get_account_summary(\n",
                      "  account_id=account_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(account_summary, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v4/accounts/{account_id}/usage/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get account usage",
        "operationId": "get_account_usage",
        "description": "Usage for all the resources and plans in an account for a given month. Account billing managers are authorized to access this report.",
        "tags": [
          "Account operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Include_Names"
          },
          {
            "$ref": "#/components/parameters/Accept_Language"
          }
        ],
        "x-ibm-permissions": {
          "description": "View account level usage",
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": "View account level usage",
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Account usage was returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Account_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n    \"pricing_country\": \"USA\",\n    \"currency_code\": \"USD\",\n    \"resources\": [\n        {\n            \"resource_id\": \"dff97f5c-bc5e-4455-b470-411c3edbe49c\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 0.006890350634753705,\n            \"plans\": [\n                {\n                    \"plan_id\": \"744bfc56-d12c-4866-88d5-dac9139e0e5d\",\n                    \"billable\": false,\n                    \"pricing_region\": \"us\",\n                    \"cost\": 0.006890350634753705,\n                    \"usage\": [\n                        {\n                            \"metric\": \"STANDARD_STORAGE\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.03,\n                                    \"quantity_tier\": \"499999\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.026,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0.10801757220178844,\n                            \"rateable_quantity\": 0.10801757220178844,\n                            \"cost\": 0.003240527166053653\n                        },\n                        {\n                            \"metric\": \"VAULT_STORAGE\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.02,\n                                    \"quantity_tier\": \"499999\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.018,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0.16923565417528152,\n                            \"rateable_quantity\": 0.16923565417528152,\n                            \"cost\": 0.0033847130835056305\n                        },\n                        {\n                            \"metric\": \"COLD_VAULT_STORAGE\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.011,\n                                    \"quantity_tier\": \"499999\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.011,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"FLEX_STORAGE\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.014,\n                                    \"quantity_tier\": \"499999\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.014,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0.0008602831512689587,\n                            \"rateable_quantity\": 0.0008602831512689587,\n                            \"cost\": 0.000012043964117765422\n                        },\n                        {\n                            \"metric\": \"FLEX_MAX_CAP\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.034,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0.0008602831512689587,\n                            \"rateable_quantity\": 0.0008602831512689587,\n                            \"cost\": 0.000029249627143144596,\n                            \"non_chargeable\": true\n                        },\n                        {\n                            \"metric\": \"STANDARD_BANDWIDTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.09,\n                                    \"quantity_tier\": \"50000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.07,\n                                    \"quantity_tier\": \"150000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.05,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0.00000491086393594742,\n                            \"rateable_quantity\": 0.00000491086393594742,\n                            \"cost\": 4.419777542352678e-7\n                        },\n                        {\n                            \"metric\": \"VAULT_BANDWIDTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.09,\n                                    \"quantity_tier\": \"50000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.07,\n                                    \"quantity_tier\": \"150000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.05,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"COLD_VAULT_BANDWIDTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.09,\n                                    \"quantity_tier\": \"50000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.07,\n                                    \"quantity_tier\": \"150000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.05,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"FLEX_BANDWIDTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.09,\n                                    \"quantity_tier\": \"50000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.07,\n                                    \"quantity_tier\": \"150000\"\n                                },\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"price\": 0.05,\n                                    \"quantity_tier\": \"999999999\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"VAULT_RETRIEVAL\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.01,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0.00001244433224201202,\n                            \"rateable_quantity\": 0.00001244433224201202,\n                            \"cost\": 1.244433224201202e-7\n                        },\n                        {\n                            \"metric\": \"COLD_VAULT_RETRIEVAL\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.05,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"FLEX_RETRIEVAL\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.029,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STANDARD_CLASS_A_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.006,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 35,\n                            \"rateable_quantity\": 35,\n                            \"cost\": 0.00021\n                        },\n                        {\n                            \"metric\": \"VAULT_CLASS_A_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.0125,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 3,\n                            \"rateable_quantity\": 3,\n                            \"cost\": 0.0000375\n                        },\n                        {\n                            \"metric\": \"COLD_VAULT_CLASS_A_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.025,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"FLEX_CLASS_A_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"1000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.01,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STANDARD_CLASS_B_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"10000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.005,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 10,\n                            \"rateable_quantity\": 10,\n                            \"cost\": 0.000005\n                        },\n                        {\n                            \"metric\": \"VAULT_CLASS_B_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"10000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.0125,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"COLD_VAULT_CLASS_B_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"10000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.025,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"FLEX_CLASS_B_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [\n                                {\n                                    \"unitQuantity\": \"10000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"price\": 0.01,\n                                    \"quantity_tier\": \"1\"\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                },\n                {\n                    \"plan_id\": \"2fdf0c08-2d32-4f46-84b5-32e0c92fffd8\",\n                    \"billable\": false,\n                    \"pricing_region\": \"global\",\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"STORAGE\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0.0004301415756344795,\n                            \"rateable_quantity\": 0.0004301415756344795,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"BANDWIDTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"RETRIEVAL\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"CLASS_A_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"CLASS_B_CALLS\",\n                            \"unit\": \"API_CALLS\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        }\n    ],\n    \"account_id\": \"b09edf5642ebfad587c594f4d4a354b0\",\n    \"month\": \"2017-09\"\n}\n"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/usage/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getAccountUsageOptions := usageReportsService.NewGetAccountUsageOptions(\n",
                      "  accountID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "accountUsage, response, err := usageReportsService.GetAccountUsage(getAccountUsageOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(accountUsage, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetAccountUsageOptions getAccountUsageOptions = new GetAccountUsageOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<AccountUsage> response = service.getAccountUsage(getAccountUsageOptions).execute();\n",
                      "AccountUsage accountUsage = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getAccountUsage() result:\\n\" + accountUsage.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getAccountUsage(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "account_usage = usage_reports_service.get_account_usage(\n",
                      "  account_id=account_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(account_usage, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v4/accounts/{account_id}/resource_groups/{resource_group_id}/usage/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Resource_Group_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get resource group usage",
        "operationId": "get_resource_group_usage",
        "description": "Usage for all the resources and plans in a resource group in a given month. Account billing managers or resource group billing managers are authorized to access this report.",
        "tags": [
          "Resource operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Include_Names"
          },
          {
            "$ref": "#/components/parameters/Accept_Language"
          }
        ],
        "x-ibm-permissions": {
          "description": null,
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": null,
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Resource group usage returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Resource_Group_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"pricing_country\": \"USA\",\n  \"currency_code\": \"USD\",\n  \"resources\": [\n      {\n          \"resource_id\": \"dff97f5c-bc5e-4455-b470-411c3edbe49c\",\n          \"billable_cost\": 0,\n          \"non_billable_cost\": 0.003452381490945816,\n          \"plans\": [\n              {\n                  \"plan_id\": \"744bfc56-d12c-4866-88d5-dac9139e0e5d\",\n                  \"billable\": false,\n                  \"pricing_region\": \"us\",\n                  \"cost\": 0.003452381490945816,\n                  \"usage\": [\n                      {\n                          \"metric\": \"STANDARD_STORAGE\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.03,\n                                  \"quantity_tier\": \"499999\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.026,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"VAULT_STORAGE\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.02,\n                                  \"quantity_tier\": \"499999\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.018,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0.16923565417528152,\n                          \"rateable_quantity\": 0.16923565417528152,\n                          \"cost\": 0.0033847130835056305\n                      },\n                      {\n                          \"metric\": \"COLD_VAULT_STORAGE\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.011,\n                                  \"quantity_tier\": \"499999\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.011,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"FLEX_STORAGE\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.014,\n                                  \"quantity_tier\": \"499999\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.014,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0.0008602831512689587,\n                          \"rateable_quantity\": 0.0008602831512689587,\n                          \"cost\": 0.000012043964117765422\n                      },\n                      {\n                          \"metric\": \"FLEX_MAX_CAP\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.034,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0.0008602831512689587,\n                          \"rateable_quantity\": 0.0008602831512689587,\n                          \"cost\": 0.000029249627143144596,\n                          \"non_chargeable\": true\n                      },\n                      {\n                          \"metric\": \"STANDARD_BANDWIDTH\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.09,\n                                  \"quantity_tier\": \"50000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.07,\n                                  \"quantity_tier\": \"150000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.05,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"VAULT_BANDWIDTH\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.09,\n                                  \"quantity_tier\": \"50000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.07,\n                                  \"quantity_tier\": \"150000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.05,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"COLD_VAULT_BANDWIDTH\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.09,\n                                  \"quantity_tier\": \"50000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.07,\n                                  \"quantity_tier\": \"150000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.05,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"FLEX_BANDWIDTH\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.09,\n                                  \"quantity_tier\": \"50000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.07,\n                                  \"quantity_tier\": \"150000\"\n                              },\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Step Tier\",\n                                  \"price\": 0.05,\n                                  \"quantity_tier\": \"999999999\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"VAULT_RETRIEVAL\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.01,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0.00001244433224201202,\n                          \"rateable_quantity\": 0.00001244433224201202,\n                          \"cost\": 1.244433224201202e-7\n                      },\n                      {\n                          \"metric\": \"COLD_VAULT_RETRIEVAL\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.05,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"FLEX_RETRIEVAL\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.029,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"STANDARD_CLASS_A_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.006,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 3,\n                          \"rateable_quantity\": 3,\n                          \"cost\": 0.000018\n                      },\n                      {\n                          \"metric\": \"VAULT_CLASS_A_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.0125,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 3,\n                          \"rateable_quantity\": 3,\n                          \"cost\": 0.0000375\n                      },\n                      {\n                          \"metric\": \"COLD_VAULT_CLASS_A_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.025,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"FLEX_CLASS_A_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"1000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.01,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"STANDARD_CLASS_B_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"10000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.005,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"VAULT_CLASS_B_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"10000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.0125,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"COLD_VAULT_CLASS_B_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"10000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.025,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"FLEX_CLASS_B_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [\n                              {\n                                  \"unitQuantity\": \"10000\",\n                                  \"tier_model\": \"Granular Tier\",\n                                  \"price\": 0.01,\n                                  \"quantity_tier\": \"1\"\n                              }\n                          ],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      }\n                  ]\n              },\n              {\n                  \"plan_id\": \"2fdf0c08-2d32-4f46-84b5-32e0c92fffd8\",\n                  \"billable\": false,\n                  \"pricing_region\": \"global\",\n                  \"cost\": 0,\n                  \"usage\": [\n                      {\n                          \"metric\": \"STORAGE\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [],\n                          \"quantity\": 0.0004301415756344795,\n                          \"rateable_quantity\": 0.0004301415756344795,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"BANDWIDTH\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"RETRIEVAL\",\n                          \"unit\": \"GIGABYTE\",\n                          \"price\": [],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"CLASS_A_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      },\n                      {\n                          \"metric\": \"CLASS_B_CALLS\",\n                          \"unit\": \"API_CALLS\",\n                          \"price\": [],\n                          \"quantity\": 0,\n                          \"rateable_quantity\": 0,\n                          \"cost\": 0\n                      }\n                  ]\n              }\n          ]\n      }\n  ],\n  \"account_id\": \"b09edf5642ebfad587c594f4d4a354b0\",\n  \"resource_group_id\": \"bce390f8721e46bdabd4ec34addecb06\",\n  \"month\": \"2017-09\"\n}\n"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/resource_groups/{resource_group_id}/usage/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getResourceGroupUsageOptions := usageReportsService.NewGetResourceGroupUsageOptions(\n",
                      "  accountID,\n",
                      "  resourceGroupID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "resourceGroupUsage, response, err := usageReportsService.GetResourceGroupUsage(getResourceGroupUsageOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(resourceGroupUsage, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetResourceGroupUsageOptions getResourceGroupUsageOptions = new GetResourceGroupUsageOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .resourceGroupId(resourceGroupId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<ResourceGroupUsage> response = service.getResourceGroupUsage(getResourceGroupUsageOptions).execute();\n",
                      "ResourceGroupUsage resourceGroupUsage = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getResourceGroupUsage() result:\\n\" + resourceGroupUsage.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  resourceGroupId: resourceGroupId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getResourceGroupUsage(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "resource_group_usage = usage_reports_service.get_resource_group_usage(\n",
                      "  account_id=account_id,\n",
                      "  resource_group_id=resource_group_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(resource_group_usage, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v4/accounts/{account_id}/organizations/{organization_id}/usage/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Org_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get organization usage",
        "operationId": "get_org_usage",
        "description": "Usage for all the resources and plans in an organization in a given month. Account billing managers or organization billing managers are authorized to access this report.",
        "tags": [
          "Organization operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Include_Names"
          },
          {
            "$ref": "#/components/parameters/Accept_Language"
          }
        ],
        "x-ibm-permissions": {
          "description": "View account level summary usage",
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": "View account level summary usage",
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Organization usage successfully returned",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Org_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n    \"pricing_country\": \"USA\",\n    \"currency_code\": \"USD\",\n    \"resources\": [\n        {\n            \"resource_id\": \"platform-a495-4aa1-9ef9-40b88a42d776\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 686.9073718764323,\n            \"plans\": [\n                {\n                    \"plan_id\": \"04082014.ibm.platform.default\",\n                    \"billable\": false,\n                    \"cost\": 686.9073718764323,\n                    \"usage\": [\n                        {\n                            \"metric\": \"GB_HOURS_PER_MONTH\",\n                            \"unit\": \"GB-HOURS\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 7\n                                }\n                            ],\n                            \"quantity\": 9812.962455377605,\n                            \"rateable_quantity\": 9812.962455377605,\n                            \"cost\": 686.9073718764323\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"sdk-for-nodejs\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 25012.305433024216,\n            \"plans\": [\n                {\n                    \"plan_id\": \"04082014.ibm.node.default\",\n                    \"billable\": false,\n                    \"cost\": 25012.305433024216,\n                    \"usage\": [\n                        {\n                            \"metric\": \"GB_HOURS_PER_MONTH\",\n                            \"unit\": \"GB-HOURS\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 7\n                                }\n                            ],\n                            \"quantity\": 357318.6490432031,\n                            \"rateable_quantity\": 357318.6490432031,\n                            \"cost\": 25012.305433024216\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"liberty-for-java\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 190.7693471736111,\n            \"plans\": [\n                {\n                    \"plan_id\": \"04082014.ibm.liberty.default\",\n                    \"billable\": false,\n                    \"cost\": 190.7693471736111,\n                    \"usage\": [\n                        {\n                            \"metric\": \"GB_HOURS_PER_MONTH\",\n                            \"unit\": \"GB-HOURS\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 7\n                                }\n                            ],\n                            \"quantity\": 2725.2763881944443,\n                            \"rateable_quantity\": 2725.2763881944443,\n                            \"cost\": 190.7693471736111\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"5acdbc42-8965-48f9-8a3c-1c728b6ed2c4\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 720,\n            \"plans\": [\n                {\n                    \"plan_id\": \"7f19407b-f9fd-4e74-8c75-3355eee89628\",\n                    \"billable\": false,\n                    \"cost\": 720,\n                    \"usage\": [\n                        {\n                            \"metric\": \"INSTANCES_PER_MONTH\",\n                            \"unit\": \"INSTANCE\",\n                            \"price\": [],\n                            \"quantity\": 8,\n                            \"rateable_quantity\": 8,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"HOSTS_HOURS_PER_MONTH\",\n                            \"unit\": \"HOUR\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 3.75\n                                }\n                            ],\n                            \"quantity\": 192,\n                            \"rateable_quantity\": 192,\n                            \"cost\": 720\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"cloudant\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 77.05499999999999,\n            \"plans\": [\n                {\n                    \"plan_id\": \"cloudant-shared\",\n                    \"billable\": false,\n                    \"cost\": 0.3,\n                    \"usage\": [\n                        {\n                            \"metric\": \"STORAGE_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 100\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"LIGHT_API_CALLS_PER_MONTH\",\n                            \"unit\": \"LIGHT_API_CALL\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 3\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"HEAVY_API_CALLS_PER_MONTH\",\n                            \"unit\": \"HEAVY_API_CALL\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 15\n                                }\n                            ],\n                            \"quantity\": 1800,\n                            \"rateable_quantity\": 2,\n                            \"cost\": 0.3\n                        },\n                        {\n                            \"metric\": \"LOOKUPS_PER_MONTH\",\n                            \"unit\": \"LOOKUP\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"WRITES_PER_MONTH\",\n                            \"unit\": \"WRITE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"QUERIES_PER_MONTH\",\n                            \"unit\": \"QUERY\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STORAGE_MANAGED_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                },\n                {\n                    \"plan_id\": \"cloudant-standard\",\n                    \"billable\": false,\n                    \"cost\": 76.755,\n                    \"usage\": [\n                        {\n                            \"metric\": \"STORAGE_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"LIGHT_API_CALLS_PER_MONTH\",\n                            \"unit\": \"LIGHT_API_CALL\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"HEAVY_API_CALLS_PER_MONTH\",\n                            \"unit\": \"HEAVY_API_CALL\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"LOOKUPS_PER_MONTH\",\n                            \"unit\": \"LOOKUP\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 25\n                                }\n                            ],\n                            \"quantity\": 102.34,\n                            \"rateable_quantity\": 102.34,\n                            \"cost\": 25.585\n                        },\n                        {\n                            \"metric\": \"WRITES_PER_MONTH\",\n                            \"unit\": \"WRITE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 50\n                                }\n                            ],\n                            \"quantity\": 51.17,\n                            \"rateable_quantity\": 51.17,\n                            \"cost\": 25.585\n                        },\n                        {\n                            \"metric\": \"QUERIES_PER_MONTH\",\n                            \"unit\": \"QUERY\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 500\n                                }\n                            ],\n                            \"quantity\": 5.117,\n                            \"rateable_quantity\": 5.117,\n                            \"cost\": 25.585\n                        },\n                        {\n                            \"metric\": \"STORAGE_MANAGED_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Step Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 100\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"IBM-Performance-Hub-1.0\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 0,\n            \"plans\": [\n                {\n                    \"plan_id\": \"Free-IBM-Performance-Hub-1.0\",\n                    \"billable\": false,\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"DATA_POINTS_PER_MONTH\",\n                            \"unit\": \"DATA_POINT\",\n                            \"price\": [],\n                            \"quantity\": 123184,\n                            \"rateable_quantity\": 123184,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"DataCache-20140407WXS\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 0,\n            \"plans\": [\n                {\n                    \"plan_id\": \"ibm.DataCache.free\",\n                    \"billable\": false,\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"MB_PER_MONTH\",\n                            \"unit\": \"MEGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"INSTANCES_PER_MONTH\",\n                            \"unit\": \"INSTANCE\",\n                            \"price\": [],\n                            \"quantity\": 1,\n                            \"rateable_quantity\": 1,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"ibm-container\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 2,\n            \"plans\": [\n                {\n                    \"plan_id\": \"06182015.ibm.containers\",\n                    \"billable\": false,\n                    \"cost\": 2,\n                    \"usage\": [\n                        {\n                            \"metric\": \"GB_HOURS_PER_MONTH\",\n                            \"unit\": \"GB-HOURS\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"100\",\n                                    \"price\": 2.8\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"IPS_PER_MONTH\",\n                            \"unit\": \"IP\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 2\n                                }\n                            ],\n                            \"quantity\": 1,\n                            \"rateable_quantity\": 1,\n                            \"cost\": 2\n                        },\n                        {\n                            \"metric\": \"STORAGE_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 14\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STORAGE_BRONZE_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 0.15\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STORAGE_SILVER_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 0.35\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STORAGE_GOLD_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 0.58\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"api-connect\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 1338600,\n            \"plans\": [\n                {\n                    \"plan_id\": \"api-connect-enterprise25m\",\n                    \"billable\": false,\n                    \"cost\": 1178600,\n                    \"usage\": [\n                        {\n                            \"metric\": \"API_CALLS_PER_MONTH\",\n                            \"unit\": \"API_CALL\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 100\n                                }\n                            ],\n                            \"quantity\": 1193530688,\n                            \"rateable_quantity\": 1168600000,\n                            \"cost\": 1168600\n                        },\n                        {\n                            \"metric\": \"INSTANCES_PER_MONTH\",\n                            \"unit\": \"INSTANCE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 10000\n                                }\n                            ],\n                            \"quantity\": 1,\n                            \"rateable_quantity\": 1,\n                            \"cost\": 10000\n                        }\n                    ]\n                },\n                {\n                    \"plan_id\": \"api-connect-enterprise1b\",\n                    \"billable\": false,\n                    \"cost\": 160000,\n                    \"usage\": [\n                        {\n                            \"metric\": \"API_CALLS_PER_MONTH\",\n                            \"unit\": \"API_CALL\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 16\n                                }\n                            ],\n                            \"quantity\": 777509147,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"INSTANCES_PER_MONTH\",\n                            \"unit\": \"INSTANCE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"1\",\n                                    \"price\": 160000\n                                }\n                            ],\n                            \"quantity\": 1,\n                            \"rateable_quantity\": 1,\n                            \"cost\": 160000\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"iotf-service-id\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 0,\n            \"plans\": [\n                {\n                    \"plan_id\": \"iotf-service-asp-id\",\n                    \"billable\": false,\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"ACTIVE_DEVICES_PER_MONTH\",\n                            \"unit\": \"ACTIVE_DEVICE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"MEGABYTES_TRANSMITTED_PER_MONTH\",\n                            \"unit\": \"MEGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 13\n                                },\n                                {\n                                    \"quantity_tier\": \"45.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 9.1\n                                },\n                                {\n                                    \"quantity_tier\": \"700.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 1.82\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STORAGE_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"PLAN_PER_MONTH\",\n                            \"unit\": \"PLAN\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"EDGE_ANALYSIS_PER_MONTH\",\n                            \"unit\": \"EDGE_MEGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 5\n                                },\n                                {\n                                    \"quantity_tier\": \"45.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 3.5\n                                },\n                                {\n                                    \"quantity_tier\": \"700.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 0.7\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"RTI_ANALYSIS_PER_MONTH\",\n                            \"unit\": \"RTI_MEGABYTE\",\n                            \"price\": [\n                                {\n                                    \"quantity_tier\": \"1.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 30\n                                },\n                                {\n                                    \"quantity_tier\": \"45.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 21\n                                },\n                                {\n                                    \"quantity_tier\": \"700.000\",\n                                    \"tier_model\": \"Granular Tier\",\n                                    \"unitQuantity\": \"10000\",\n                                    \"price\": 4.2\n                                }\n                            ],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                },\n                {\n                    \"plan_id\": \"iotf-service-free-id\",\n                    \"billable\": false,\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"ACTIVE_DEVICES_PER_MONTH\",\n                            \"unit\": \"ACTIVE_DEVICE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"MEGABYTES_TRANSMITTED_PER_MONTH\",\n                            \"unit\": \"MEGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"STORAGE_PER_MONTH\",\n                            \"unit\": \"GIGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"PLAN_PER_MONTH\",\n                            \"unit\": \"PLAN\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"EDGE_ANALYSIS_PER_MONTH\",\n                            \"unit\": \"EDGE_MEGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"RTI_ANALYSIS_PER_MONTH\",\n                            \"unit\": \"RTI_MEGABYTE\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"CloudEventManagement16a036f0-f1fc-11e6-a38d-394caee7d66d\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 0,\n            \"plans\": [\n                {\n                    \"plan_id\": \"af0a953b-f647-4b0b-b099-8dcc61a910ed\",\n                    \"billable\": false,\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"EVENTS_PER_MONTH\",\n                            \"unit\": \"EVENT\",\n                            \"price\": [],\n                            \"quantity\": 410822,\n                            \"rateable_quantity\": 410822,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"resource_id\": \"c466e218-9188-4562-9af5-fc7e0dc790c5\",\n            \"billable_cost\": 0,\n            \"non_billable_cost\": 0,\n            \"plans\": [\n                {\n                    \"plan_id\": \"d5b9d765-8ff5-4772-9aac-2d7017044ae9\",\n                    \"billable\": false,\n                    \"cost\": 0,\n                    \"usage\": [\n                        {\n                            \"metric\": \"API_CALLS_PER_MONTH\",\n                            \"unit\": \"API_CALL\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"EVENTS_PER_MONTH\",\n                            \"unit\": \"EVENT\",\n                            \"price\": [],\n                            \"quantity\": 33,\n                            \"rateable_quantity\": 33,\n                            \"cost\": 0\n                        },\n                        {\n                            \"metric\": \"EVENTS_STORED_PER_MONTH\",\n                            \"unit\": \"EVENTS_STORED\",\n                            \"price\": [],\n                            \"quantity\": 0,\n                            \"rateable_quantity\": 0,\n                            \"cost\": 0\n                        }\n                    ]\n                }\n            ]\n        }\n    ],\n    \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n    \"organization_id\": \"us-south:54257f98-83f0-4eca-ae04-9ea35277a538\",\n    \"month\": \"2017-07\"\n}\n"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/organizations/{organization_id}/usage/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getOrgUsageOptions := usageReportsService.NewGetOrgUsageOptions(\n",
                      "  accountID,\n",
                      "  orgID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "orgUsage, response, err := usageReportsService.GetOrgUsage(getOrgUsageOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(orgUsage, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetOrgUsageOptions getOrgUsageOptions = new GetOrgUsageOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .organizationId(orgId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<OrgUsage> response = service.getOrgUsage(getOrgUsageOptions).execute();\n",
                      "OrgUsage orgUsage = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getOrgUsage() result:\\n\" + orgUsage.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  organizationId: orgId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getOrgUsage(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "org_usage = usage_reports_service.get_org_usage(\n",
                      "  account_id=account_id,\n",
                      "  organization_id=org_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(org_usage, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v4/accounts/{account_id}/focus/{month}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get resource instance usage in FOCUS format",
        "operationId": "get_resource_usage_focus",
        "description": "Query for resource instance usage in FOCUS (FinOps Open Cost and Usage Specification) format. This endpoint supports two response formats:\n- **JSON format** (format=json or default): Returns paginated JSON response from the metering-reporting API with the FOCUS_Usage schema. Supports pagination with _limit and _start parameters. Resource names and tags are always included in the FOCUS data structure.\n- **CSV format** (format=csv): Returns a CSV file download from the metering-report-downloader service with FOCUS-compliant columns. The CSV response does not support pagination parameters.\nAccount billing administrator is authorized to access this report.",
        "tags": [
          "Resource operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Format_Query"
          },
          {
            "$ref": "#/components/parameters/X_Focus_Version_Header"
          },
          {
            "$ref": "#/components/parameters/Limit_Query"
          },
          {
            "$ref": "#/components/parameters/Start_Query"
          }
        ],
        "x-ibm-permissions": {
          "description": "Required IAM permissions to access this endpoint.",
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": "Activity Tracker events generated by this operation.",
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Resource instance usage returned successfully. Response format depends on the `format` parameter:\n- **format=json** (default): Returns paginated JSON with Instances_Usage schema\n- **format=csv**: Returns CSV file with FOCUS-compliant columns and appropriate headers",
            "headers": {
              "Content-Type": {
                "description": "Response content type. `application/json` for JSON format, `text/csv` for CSV format with charset=utf-8",
                "schema": {
                  "type": "string",
                  "enum": [
                    "application/json",
                    "text/csv; charset=utf-8"
                  ]
                }
              },
              "Content-Disposition": {
                "description": "Present only for CSV format. Specifies the filename for download, e.g., `attachment; filename=\"2026-03-focus-v1-2-{account_id}.csv\"`",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FOCUS_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"limit\": 2,\n  \"count\": 2,\n  \"first\": {\n    \"href\": \"/v4/accounts/0ccb448b561347adb91a0af22ed8c32d/focus/2026-02?format=json&_limit=2\"\n  },\n  \"resources\": [\n    {\n      \"AvailabilityZone\": \"lon02\",\n      \"BilledCost\": 0,\n      \"BillingAccountId\": \"0ccb448b561347adb91a0af22ed8c32d\",\n      \"BillingAccountName\": \"Wood Group\",\n      \"BillingAccountType\": \"Enterprise\",\n      \"BillingCurrency\": \"GBP\",\n      \"BillingPeriodEnd\": \"2026-02-28T23:59:59Z\",\n      \"BillingPeriodStart\": \"2026-02-01T00:00:00Z\",\n      \"CapacityReservationId\": null,\n      \"CapacityReservationStatus\": null,\n      \"ChargeCategory\": \"Usage\",\n      \"ChargeClass\": null,\n      \"ChargeDescription\": \"$0 for SECOND_PROCESSOR_INTEL_INTEL_XEON_4210_2_20 in London (lon02)\",\n      \"ChargeFrequency\": \"Usage-Based\",\n      \"ChargePeriodEnd\": \"2026-02-28T23:59:59Z\",\n      \"ChargePeriodStart\": \"2026-02-01T00:00:00Z\",\n      \"CommitmentDiscountCategory\": null,\n      \"CommitmentDiscountId\": null,\n      \"CommitmentDiscountName\": null,\n      \"CommitmentDiscountQuantity\": null,\n      \"CommitmentDiscountStatus\": null,\n      \"CommitmentDiscountType\": null,\n      \"CommitmentDiscountUnit\": null,\n      \"ConsumedQuantity\": 0,\n      \"ConsumedUnit\": \"SECOND_PROCESSOR_INTEL_INTEL_XEON_4210_2_20\",\n      \"ContractedCost\": 0,\n      \"ContractedUnitPrice\": 0.7430249,\n      \"EffectiveCost\": 0,\n      \"InvoiceId\": null,\n      \"InvoiceIssuerName\": \"IBM\",\n      \"ListCost\": 0,\n      \"ListUnitPrice\": 0.7430249,\n      \"PricingCategory\": \"Standard\",\n      \"PricingCurrency\": \"GBP\",\n      \"PricingCurrencyContractedUnitPrice\": null,\n      \"PricingCurrencyEffectiveCost\": null,\n      \"PricingCurrencyListUnitPrice\": null,\n      \"PricingQuantity\": \"1\",\n      \"PricingUnit\": \"Charge\",\n      \"ProviderName\": \"IBM Cloud\",\n      \"PublisherName\": \"IBM\",\n      \"RegionId\": \"lon\",\n      \"RegionName\": \"London\",\n      \"ResourceId\": \"1930092\",\n      \"ResourceName\": \"uklon02.p02-e-gbr-f-02.woodnsxt.vcs\",\n      \"ResourceType\": \"Bare Metal Servers and Attached Services\",\n      \"ServiceCategory\": \"Compute\",\n      \"ServiceName\": \"Bare Metal Servers and Attached Services\",\n      \"ServiceSubcategory\": \"Virtual Machines\",\n      \"SkuId\": \"classic_infrastructure_1-1055-D0DTPZX-INTEL_XEON_4210_2_20\",\n      \"SkuMeter\": \"Charge\",\n      \"SkuPriceDetails\": null,\n      \"SkuPriceId\": null,\n      \"SubAccountId\": null,\n      \"SubAccountName\": null,\n      \"SubAccountType\": null,\n      \"Tags\": null,\n      \"x_DiscountId\": null,\n      \"x_DiscountName\": null,\n      \"x_DiscountQuantity\": null,\n      \"x_DiscountType\": null,\n      \"x_OfferId\": null,\n      \"x_OfferCredit\": null\n    },\n    {\n      \"AvailabilityZone\": \"lon02\",\n      \"BilledCost\": 0,\n      \"BillingAccountId\": \"0ccb448b561347adb91a0af22ed8c32d\",\n      \"BillingAccountName\": \"Wood Group\",\n      \"BillingAccountType\": \"Enterprise\",\n      \"BillingCurrency\": \"GBP\",\n      \"BillingPeriodEnd\": \"2026-02-28T23:59:59Z\",\n      \"BillingPeriodStart\": \"2026-02-01T00:00:00Z\",\n      \"CapacityReservationId\": null,\n      \"CapacityReservationStatus\": null,\n      \"ChargeCategory\": \"Usage\",\n      \"ChargeClass\": null,\n      \"ChargeDescription\": \"$0 for SRIOV_ENABLED in London (lon02)\",\n      \"ChargeFrequency\": \"Usage-Based\",\n      \"ChargePeriodEnd\": \"2026-02-28T23:59:59Z\",\n      \"ChargePeriodStart\": \"2026-02-01T00:00:00Z\",\n      \"CommitmentDiscountCategory\": null,\n      \"CommitmentDiscountId\": null,\n      \"CommitmentDiscountName\": null,\n      \"CommitmentDiscountQuantity\": null,\n      \"CommitmentDiscountStatus\": null,\n      \"CommitmentDiscountType\": null,\n      \"CommitmentDiscountUnit\": null,\n      \"ConsumedQuantity\": 0,\n      \"ConsumedUnit\": \"SRIOV_ENABLED\",\n      \"ContractedCost\": 0,\n      \"ContractedUnitPrice\": 0.7430249,\n      \"EffectiveCost\": 0,\n      \"InvoiceId\": null,\n      \"InvoiceIssuerName\": \"IBM\",\n      \"ListCost\": 0,\n      \"ListUnitPrice\": 0.7430249,\n      \"PricingCategory\": \"Standard\",\n      \"PricingCurrency\": \"GBP\",\n      \"PricingCurrencyContractedUnitPrice\": null,\n      \"PricingCurrencyEffectiveCost\": null,\n      \"PricingCurrencyListUnitPrice\": null,\n      \"PricingQuantity\": \"1\",\n      \"PricingUnit\": \"Charge\",\n      \"ProviderName\": \"IBM Cloud\",\n      \"PublisherName\": \"IBM\",\n      \"RegionId\": \"lon\",\n      \"RegionName\": \"London\",\n      \"ResourceId\": \"1930092\",\n      \"ResourceName\": \"uklon02.p02-e-gbr-f-02.woodnsxt.vcs\",\n      \"ResourceType\": \"Bare Metal Servers and Attached Services\",\n      \"ServiceCategory\": \"Compute\",\n      \"ServiceName\": \"Bare Metal Servers and Attached Services\",\n      \"ServiceSubcategory\": \"Virtual Machines\",\n      \"SkuId\": \"classic_infrastructure_1-1055-D0DTPZX-SRIOV_ENABLED\",\n      \"SkuMeter\": \"Charge\",\n      \"SkuPriceDetails\": null,\n      \"SkuPriceId\": null,\n      \"SubAccountId\": null,\n      \"SubAccountName\": null,\n      \"SubAccountType\": null,\n      \"Tags\": null,\n      \"x_DiscountId\": null,\n      \"x_DiscountName\": null,\n      \"x_DiscountQuantity\": null,\n      \"x_DiscountType\": null,\n      \"x_OfferId\": null,\n      \"x_OfferCredit\": null\n    }\n  ],\n  \"next\": {\n    \"href\": \"/v4/accounts/0ccb448b561347adb91a0af22ed8c32d/focus/2026-02?format=json&_limit=2&_start=eyJvZmZzZXQiOjJ9\",\n    \"offset\": \"eyJvZmZzZXQiOjJ9\"\n  }\n}"
                  }
                }
              },
              "text/csv": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                },
                "example": "BilledCost,BillingAccountId,BillingAccountName,BillingCurrency,BillingPeriodEnd,BillingPeriodStart,ChargeCategory,ChargeDescription,ChargeFrequency,ChargePeriodEnd,ChargePeriodStart,CommitmentDiscountCategory,CommitmentDiscountId,CommitmentDiscountName,CommitmentDiscountStatus,CommitmentDiscountType,ConsumedQuantity,ConsumedUnit,ContractedCost,ContractedUnitPrice,EffectiveCost,InvoiceIssuerName,ListCost,ListUnitPrice,PricingCategory,PricingQuantity,PricingUnit,ProviderName,PublisherName,Region,ResourceId,ResourceName,ResourceType,ServiceCategory,ServiceName,SkuId,SkuPriceId,SubAccountId,SubAccountName,Tags,x_AccountType,x_BilledCostInUSD,x_Billable,x_ChargeSource,x_CommitmentDiscountQuantity,x_ContractedCostInUSD,x_CostInUSD,x_DiscountId,x_DiscountName,x_EffectiveCostInUSD,x_ListCostInUSD,x_Month,x_OfferCredits,x_OfferType,x_PlanId,x_PlanName,x_PricingCountry,x_PricingPlanId,x_PricingRegion,x_ResourceGroupId,x_ResourceGroupName,x_ResourceInstanceId,x_ServiceTags,x_SubscriptionCredits,x_UsageAmount\n0.16078519435615318,b09edf5642ebfad587c594f4d4a354b0,Test Account,USD,2026-03-31T23:59:59.999Z,2026-03-01T00:00:00.000Z,Usage,Standard storage,Usage-Based,2026-03-31T23:59:59.999Z,2026-03-01T00:00:00.000Z,,,,,,,,,0.16093003138439915,0.16078519435615318,IBM,0.17668134216061437,0.02299,On-Demand,10.000001950189471,GIGABYTE,IBM,IBM,us-south,crn:v1:staging:public:cloud-object-storage:global:a/b09edf5642ebfad587c594f4d4a354b0:ec9e9262-4b70-436c-90e5-a7dece6d3b88::,Cloud Object Storage-tu,cloud-object-storage,Storage,Cloud Object Storage,dff97f5c-bc5e-4455-b470-411c3edbe49c-STANDARD_STORAGE-GIGABYTE,billable:v4:744bfc56-d12c-4866-88d5-dac9139e0e5d:us-south:1685577600000:STANDARD_STORAGE:GIGABYTE:,b09edf5642ebfad587c594f4d4a354b0,Test Account,,ACCOUNT,0.16078519435615318,true,metering,0,0.16093003138439915,0.16078519435615318,Discount-7e171679-63b4-4f42-96f7-973d6da3e547,Platform Discount,0.16078519435615318,0.17668134216061437,2026-03,0,,744bfc56-d12c-4866-88d5-dac9139e0e5d,Standard,USA,billable:v4:744bfc56-d12c-4866-88d5-dac9139e0e5d:us-south:1685577600000:,us-south,a213fbb3343c67f49a2b2596f64147e1,Default,crn:v1:staging:public:cloud-object-storage:global:a/b09edf5642ebfad587c594f4d4a354b0:ec9e9262-4b70-436c-90e5-a7dece6d3b88::,,0,10.000001950189471\n"
              }
            }
          },
          "400": {
            "description": "Bad request. Invalid parameters such as invalid date format, future date, invalid format parameter value, or unsupported FOCUS version.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                },
                "examples": {
                  "invalid_focus_version": {
                    "summary": "Unsupported FOCUS version",
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_focus_version",
                          "message": "Unsupported FOCUS version: 1.3. Only version 1.2 is supported."
                        }
                      ]
                    }
                  },
                  "invalid_parameters": {
                    "summary": "Invalid parameters",
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_parameters",
                          "message": "Invalid date format or future date provided"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized. Invalid or missing IAM token.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. User does not have permission to access this account's billing data.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Not found. Account not found or no data available for the specified month.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests. Rate limit exceeded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error. An unexpected error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        }
      }
    },
    "/v4/accounts/{account_id}/resource_instances/usage/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get resource instance usage in an account",
        "operationId": "get_resource_usage_account",
        "description": "Query for resource instance usage in an account. Filter the results with query parameters. Account billing administrator is authorized to access this report.",
        "tags": [
          "Resource operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Include_Names"
          },
          {
            "$ref": "#/components/parameters/Include_Tags"
          },
          {
            "$ref": "#/components/parameters/Accept_Language"
          },
          {
            "$ref": "#/components/parameters/Limit_Query"
          },
          {
            "$ref": "#/components/parameters/Start_Query"
          },
          {
            "name": "resource_group_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource group.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "organization_id",
            "in": "query",
            "required": false,
            "description": "Filter by organization_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource_instance_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource instance_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "plan_id",
            "in": "query",
            "required": false,
            "description": "Filter by plan_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "region",
            "in": "query",
            "required": false,
            "description": "Region in which the resource instance is provisioned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "x-ibm-permissions": {
          "description": null,
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": "Calling the method generates ```billing.usage-report.read``` auditing event.",
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Resource instance usage returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Instances_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"limit\": 5,\n  \"count\": 236,\n  \"first\": {\n    \"href\": \"/v4/accounts/265d9d22597d4ee589138929093f1246/resource_instances/usage/2023-06?_limit=5&_names=true&_tags=true\"\n  },\n  \"resources\": [\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:7d9e33a0-c173-46d3-b0a1-b3fd2f7428e7\",\n      \"organization_id\": \"eu-gb:81d8b31f-b8b3-4a5d-ab75-3a9833c29eb4\",\n      \"space_id\": \"20dfff17-fd20-407c-9e50-d8548beb0373\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:7d9e33a0-c173-46d3-b0a1-b3fd2f7428e7:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"eu-gb\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 350.4475714583333,\n          \"cost\": 23.087486007675,\n          \"rated_cost\": 25.65276223075,\n          \"rateable_quantity\": 350.4475714583333,\n          \"discounts\": [\n            {\n              \"name\": \"Sample Discount Name\",\n              \"display_name\": \"Sample Discount Name\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [\n        \"env:test\",\n        \"temporary\"\n      ],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"organization_name\": \"IBMBSS\",\n      \"space_name\": \"Promo\",\n      \"resource_instance_name\": \"bmpromocode-blue\"\n    },\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:67f149c9-41a8-45fb-aebd-6e838094c3c2\",\n      \"organization_id\": \"eu-gb:81d8b31f-b8b3-4a5d-ab75-3a9833c29eb4\",\n      \"space_id\": \"b2eff8ff-0bfe-41c8-9218-4db11d19e9b3\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:67f149c9-41a8-45fb-aebd-6e838094c3c2:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"eu-gb\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 934.5270777777778,\n          \"cost\": 61.56664388400001,\n          \"rated_cost\": 68.40738209333334,\n          \"rateable_quantity\": 934.5270777777778,\n          \"discounts\": [\n            {\n              \"name\": \"Sample Discount Name\",\n              \"display_name\": \"Sample Discount Name\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"organization_name\": \"IBMBSS\",\n      \"space_name\": \"Freemium\",\n      \"resource_instance_name\": \"bss-service-recorder-green\"\n    },\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:758ab19c-5f92-44a1-acf6-f8b960792e6b\",\n      \"organization_id\": \"eu-gb:81d8b31f-b8b3-4a5d-ab75-3a9833c29eb4\",\n      \"space_id\": \"ec28f495-48cf-42fe-8076-d3fb35631b21\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:758ab19c-5f92-44a1-acf6-f8b960792e6b:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"eu-gb\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 1401.79039,\n          \"cost\": 92.3499508932,\n          \"rated_cost\": 102.611056548,\n          \"rateable_quantity\": 1401.79039,\n          \"discounts\": [\n            {\n              \"name\": \"Sample Discount Name\",\n              \"display_name\": \"Sample Discount Name\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [\n        \"fips199-low\"\n      ],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"organization_name\": \"IBMBSS\",\n      \"space_name\": \"RuntimeDataCollector\",\n      \"resource_instance_name\": \"qradar-bss-green\"\n    },\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:e2f75020-a25c-4f30-98cf-16c50aab891e\",\n      \"organization_id\": \"eu-gb:81d8b31f-b8b3-4a5d-ab75-3a9833c29eb4\",\n      \"space_id\": \"2d22eb3d-9b77-4df8-a1c0-e8f165646fe5\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:e2f75020-a25c-4f30-98cf-16c50aab891e:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"eu-gb\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 467.26335166666667,\n          \"cost\": 30.7833096078,\n          \"rated_cost\": 34.203677342,\n          \"rateable_quantity\": 467.26335166666667,\n          \"discounts\": [\n            {\n              \"name\": \"Sample Discount Name\",\n              \"display_name\": \"Sample Discount Name\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [\n        \"audit\",\n        \"env:stage\",\n        \"fips199-moderate\"\n      ],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"organization_name\": \"IBMBSS\",\n      \"space_name\": \"Notifications\",\n      \"resource_instance_name\": \"public-notifications-blue\"\n    },\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:fae5242e-07d8-42c3-9bef-891e191c5aee\",\n      \"organization_id\": \"eu-gb:81d8b31f-b8b3-4a5d-ab75-3a9833c29eb4\",\n      \"space_id\": \"a4e22100-6833-4a3b-889a-8a79c44a8192\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:fae5242e-07d8-42c3-9bef-891e191c5aee:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"eu-gb\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 1869.0532022222221,\n          \"cost\": 123.13322496239998,\n          \"rated_cost\": 136.81469440266665,\n          \"rateable_quantity\": 1869.0532022222221,\n          \"discounts\": [\n            {\n              \"name\": \"Sample Discount Name\",\n              \"display_name\": \"Sample Discount Name\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [\n        \"fips199-low\"\n      ],\n      \"service_tags\": [\n        \"project::config_id:b48d4e76-7c72-467c-97b6-443092334ce4\",\n        \"project::project_id:639bcd7e-f1f1-469f-bd28-1f03bcac6121\"\n      ],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"organization_name\": \"IBMBSS\",\n      \"space_name\": \"Abacus\",\n      \"resource_instance_name\": \"fvt-metering-collector-green\"\n    }\n  ],\n  \"next\": {\n    \"href\": \"/v4/accounts/265d9d22597d4ee589138929093f1246/resource_instances/usage/2023-06?_limit=5&_names=true&_start=g1AAAAVreJy1lE1uFDEQhVv8nAN2sOlxuVzln9mQNRdgCS6XHTJ0JlIyyZYTcA6ugcQl2LHhHqEGCaQMQowipRdValv92vXpPS_TND19_1inlyrt4rKfqHhYncn5LFdXV7t62gFw1ZaLa63b3Wrbd4t98ahO8uz29nbz6-XcytcPDiNrUUQuSal3zsWHXLBACcMjRdev51NZZ69Zgh-zWJupss5VEs-hlhxCw9KFHEUODTD50oIO4WjLpaZh-i2iJsdlcEp9pIajeaohRhMNNVCjUFp3QJARPO1nWW0vtK-0j3q97JzrN327czsHAD5mNp0I-0emiX5s9jBe_IFR_s9CnluVVw-JI2IEwowdOJGEJkGjQOyUKksxrVBjTT03AApQk2nVJjk3llBSqHpPHPx6c-CNcASPkz2Pt3d4fDuCh-8-co6YagqkKYkm8XUEoi5YSnMjemzE2NOwSWrhXFFGgdA0mDmKq1rQq6HK0fyAnDMUZjOFCpVK1f0-62yn32q9VCdny1Jl6esbWv-1u17fAbL-B6Q3h5D8EZDe7SF9fEjTYPe-29RqAEl8bvtueRJRnzsPB2yaKRPZDyRKs-Rw5hREEcQk7puhT4c8jrhQtk-sTl-sGZLvDxckjiVDELR0IISRfe1AI8UhCC2Li0psruIomO064Y6DixAYJrNlrvdl8nmz-QnabIV1&_tags=true\",\n    \"offset\": \"g1AAAAVreJy1lE1uFDEQhVv8nAN2sOlxuVzln9mQNRdgCS6XHTJ0JlIyyZYTcA6ugcQl2LHhHqEGCaQMQowipRdValv92vXpPS_TND19_1inlyrt4rKfqHhYncn5LFdXV7t62gFw1ZaLa63b3Wrbd4t98ahO8uz29nbz6-XcytcPDiNrUUQuSal3zsWHXLBACcMjRdev51NZZ69Zgh-zWJupss5VEs-hlhxCw9KFHEUODTD50oIO4WjLpaZh-i2iJsdlcEp9pIajeaohRhMNNVCjUFp3QJARPO1nWW0vtK-0j3q97JzrN327czsHAD5mNp0I-0emiX5s9jBe_IFR_s9CnluVVw-JI2IEwowdOJGEJkGjQOyUKksxrVBjTT03AApQk2nVJjk3llBSqHpPHPx6c-CNcASPkz2Pt3d4fDuCh-8-co6YagqkKYkm8XUEoi5YSnMjemzE2NOwSWrhXFFGgdA0mDmKq1rQq6HK0fyAnDMUZjOFCpVK1f0-62yn32q9VCdny1Jl6esbWv-1u17fAbL-B6Q3h5D8EZDe7SF9fEjTYPe-29RqAEl8bvtueRJRnzsPB2yaKRPZDyRKs-Rw5hREEcQk7puhT4c8jrhQtk-sTl-sGZLvDxckjiVDELR0IISRfe1AI8UhCC2Li0psruIomO064Y6DixAYJrNlrvdl8nmz-QnabIV1\"\n  }\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Status 400",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Status 401",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "429": {
            "description": "Status 429",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Status 500",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/resource_instances/usage/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getResourceUsageAccountOptions := usageReportsService.NewGetResourceUsageAccountOptions(\n",
                      "  accountID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "instancesUsage, response, err := usageReportsService.GetResourceUsageAccount(getResourceUsageAccountOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(instancesUsage, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetResourceUsageAccountOptions getResourceUsageAccountOptions = new GetResourceUsageAccountOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<InstancesUsage> response = service.getResourceUsageAccount(getResourceUsageAccountOptions).execute();\n",
                      "InstancesUsage instancesUsage = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getResourceUsageAccount() result:\\n\" + instancesUsage.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getResourceUsageAccount(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "instances_usage = usage_reports_service.get_resource_usage_account(\n",
                      "  account_id=account_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(instances_usage, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v4/accounts/{account_id}/resource_groups/{resource_group_id}/resource_instances/usage/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Resource_Group_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get resource instance usage in a resource group",
        "operationId": "get_resource_usage_resource_group",
        "description": "Query for resource instance usage in a resource group. Filter the results with query parameters. Account billing administrator and resource group billing administrators are authorized to access this report.",
        "tags": [
          "Resource operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Include_Names"
          },
          {
            "$ref": "#/components/parameters/Include_Tags"
          },
          {
            "$ref": "#/components/parameters/Accept_Language"
          },
          {
            "$ref": "#/components/parameters/Limit_Query"
          },
          {
            "$ref": "#/components/parameters/Start_Query"
          },
          {
            "name": "resource_instance_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource instance id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "plan_id",
            "in": "query",
            "required": false,
            "description": "Filter by plan_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "region",
            "in": "query",
            "required": false,
            "description": "Region in which the resource instance is provisioned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "x-ibm-permissions": {
          "description": null,
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": null,
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Resource instance usage returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Instances_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"limit\": 3,\n  \"count\": 3,\n  \"first\": {\n    \"href\": \"/v4/accounts/b09edf5642ebfad587c594f4d4a354b0/resource_groups/a213fbb3343c67f49a2b2596f64147e1/resource_instances/usage/2023-06?_limit=3&_names=true&_tags=true\"\n  },\n  \"resources\": [\n    {\n      \"account_id\": \"b09edf5642ebfad587c594f4d4a354b0\",\n      \"resource_instance_id\": \"crn:v1:staging:public:cloud-object-storage:global:a/b09edf5642ebfad587c594f4d4a354b0:93f85e08-277a-40af-a15e-2a2de6421b9c::\",\n      \"resource_group_id\": \"a213fbb3343c67f49a2b2596f64147e1\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"744bfc56-d12c-4866-88d5-dac9139e0e5d\",\n      \"resource_id\": \"dff97f5c-bc5e-4455-b470-411c3edbe49c\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:744bfc56-d12c-4866-88d5-dac9139e0e5d:us-south:1685577600000:\",\n      \"pricing_region\": \"us-south\",\n      \"region\": \"us-south\",\n      \"usage\": [\n        {\n          \"metric\": \"STANDARD_STORAGE\",\n          \"unit\": \"GIGABYTE\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.02299,\n              \"quantity_tier\": \"499999\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.0209,\n              \"quantity_tier\": \"999999999\"\n            }\n          ],\n          \"quantity\": 10.000001950189471,\n          \"cost\": 0.16078519435615318,\n          \"rated_cost\": 0.16093003138439915,\n          \"rateable_quantity\": 10.000001950189471,\n          \"discounts\": [\n            {\n              \"name\": \"platform Discount\",\n              \"display_name\": \"platform Discount\",\n              \"ref\": \"Discount-7e171679-63b4-4f42-96f7-973d6da3e547\",\n              \"discount\": 0.09\n            }\n          ],\n          \"metric_name\": \"Standard storage\",\n          \"unit_name\": \"GIGABYTE\"\n        },\n        {\n          \"metric\": \"STANDARD_BANDWIDTH\",\n          \"unit\": \"GIGABYTE\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.09,\n              \"quantity_tier\": \"50000\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.07,\n              \"quantity_tier\": \"150000\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.05,\n              \"quantity_tier\": \"999999999\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard bandwidth\",\n          \"unit_name\": \"GIGABYTE\"\n        },\n        {\n          \"metric\": \"STANDARD_CLASS_A_CALLS\",\n          \"unit\": \"API_CALLS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1000\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 0.005225,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard Class A calls\",\n          \"unit_name\": \"API_CALLS\"\n        },\n        {\n          \"metric\": \"STANDARD_CLASS_B_CALLS\",\n          \"unit\": \"API_CALLS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"10000\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 0.00418,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard Class B calls\",\n          \"unit_name\": \"API_CALLS\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Standard\",\n      \"resource_name\": \"Cloud Object Storage\",\n      \"resource_instance_name\": \"Cloud Object Storage-tu\",\n      \"resource_group_name\": \"Default\"\n    },\n    {\n      \"account_id\": \"b09edf5642ebfad587c594f4d4a354b0\",\n      \"resource_instance_id\": \"crn:v1:staging:public:cloud-object-storage:global:a/b09edf5642ebfad587c594f4d4a354b0:ec9e9262-4b70-436c-90e5-a7dece6d3b88::\",\n      \"resource_group_id\": \"a213fbb3343c67f49a2b2596f64147e1\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"744bfc56-d12c-4866-88d5-dac9139e0e5d\",\n      \"resource_id\": \"dff97f5c-bc5e-4455-b470-411c3edbe49c\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:744bfc56-d12c-4866-88d5-dac9139e0e5d:us-south:1685577600000:\",\n      \"pricing_region\": \"us-south\",\n      \"region\": \"us-south\",\n      \"usage\": [\n        {\n          \"metric\": \"STANDARD_STORAGE\",\n          \"unit\": \"GIGABYTE\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.02299,\n              \"quantity_tier\": \"499999\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.0209,\n              \"quantity_tier\": \"999999999\"\n            }\n          ],\n          \"quantity\": 24.162232154980302,\n          \"cost\": 0.38849284354823493,\n          \"rated_cost\": 0.388842802070098,\n          \"rateable_quantity\": 24.162232154980302,\n          \"discounts\": [\n            {\n              \"name\": \"platform Discount\",\n              \"display_name\": \"platform Discount\",\n              \"ref\": \"Discount-7e171679-63b4-4f42-96f7-973d6da3e547\",\n              \"discount\": 0.09\n            }\n          ],\n          \"metric_name\": \"Standard storage\",\n          \"unit_name\": \"GIGABYTE\"\n        },\n        {\n          \"metric\": \"STANDARD_BANDWIDTH\",\n          \"unit\": \"GIGABYTE\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.09,\n              \"quantity_tier\": \"50000\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.07,\n              \"quantity_tier\": \"150000\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.05,\n              \"quantity_tier\": \"999999999\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard bandwidth\",\n          \"unit_name\": \"GIGABYTE\"\n        },\n        {\n          \"metric\": \"STANDARD_CLASS_A_CALLS\",\n          \"unit\": \"API_CALLS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1000\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 0.005225,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard Class A calls\",\n          \"unit_name\": \"API_CALLS\"\n        },\n        {\n          \"metric\": \"STANDARD_CLASS_B_CALLS\",\n          \"unit\": \"API_CALLS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"10000\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 0.00418,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard Class B calls\",\n          \"unit_name\": \"API_CALLS\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Standard\",\n      \"resource_name\": \"Cloud Object Storage\",\n      \"resource_instance_name\": \"cos-service-with-aspera\",\n      \"resource_group_name\": \"Default\"\n    },\n    {\n      \"account_id\": \"b09edf5642ebfad587c594f4d4a354b0\",\n      \"resource_instance_id\": \"crn:v1:staging:public:cloud-object-storage:global:a/b09edf5642ebfad587c594f4d4a354b0:acadcae0-75a7-44ca-bf1c-91ad8843d818::\",\n      \"resource_group_id\": \"a213fbb3343c67f49a2b2596f64147e1\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"744bfc56-d12c-4866-88d5-dac9139e0e5d\",\n      \"resource_id\": \"dff97f5c-bc5e-4455-b470-411c3edbe49c\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:744bfc56-d12c-4866-88d5-dac9139e0e5d:us-south:1685577600000:\",\n      \"pricing_region\": \"us-south\",\n      \"region\": \"us-south\",\n      \"usage\": [\n        {\n          \"metric\": \"STANDARD_STORAGE\",\n          \"unit\": \"GIGABYTE\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.02299,\n              \"quantity_tier\": \"499999\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.0209,\n              \"quantity_tier\": \"999999999\"\n            }\n          ],\n          \"quantity\": 0.29296875,\n          \"cost\": 0.004710502822265625,\n          \"rated_cost\": 0.00471474609375,\n          \"rateable_quantity\": 0.29296875,\n          \"discounts\": [\n            {\n              \"name\": \"platform Discount\",\n              \"display_name\": \"platform Discount\",\n              \"ref\": \"Discount-7e171679-63b4-4f42-96f7-973d6da3e547\",\n              \"discount\": 0.09\n            }\n          ],\n          \"metric_name\": \"Standard storage\",\n          \"unit_name\": \"GIGABYTE\"\n        },\n        {\n          \"metric\": \"STANDARD_BANDWIDTH\",\n          \"unit\": \"GIGABYTE\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.09,\n              \"quantity_tier\": \"50000\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.07,\n              \"quantity_tier\": \"150000\"\n            },\n            {\n              \"unitQuantity\": \"1\",\n              \"tier_model\": \"Step Tier\",\n              \"price\": 0.05,\n              \"quantity_tier\": \"999999999\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard bandwidth\",\n          \"unit_name\": \"GIGABYTE\"\n        },\n        {\n          \"metric\": \"STANDARD_CLASS_A_CALLS\",\n          \"unit\": \"API_CALLS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"1000\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 0.005225,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard Class A calls\",\n          \"unit_name\": \"API_CALLS\"\n        },\n        {\n          \"metric\": \"STANDARD_CLASS_B_CALLS\",\n          \"unit\": \"API_CALLS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"10000\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 0.00418,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 0,\n          \"cost\": 0,\n          \"rated_cost\": 0,\n          \"rateable_quantity\": 0,\n          \"discounts\": [],\n          \"metric_name\": \"Standard Class B calls\",\n          \"unit_name\": \"API_CALLS\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Standard\",\n      \"resource_name\": \"Cloud Object Storage\",\n      \"resource_instance_name\": \"Cloud Object Storage-BM-Demo\",\n      \"resource_group_name\": \"Default\"\n    }\n  ],\n  \"next\": {\n    \"href\": \"/v4/accounts/b09edf5642ebfad587c594f4d4a354b0/resource_groups/a213fbb3343c67f49a2b2596f64147e1/resource_instances/usage/2023-06?_limit=3&_names=true&_start=g1AAAAP-eJzV0DtyFDEQBmAZu7gGZDjwrFrqh6RJ4Cio9cBexrtVnlmfh5RTcLRFdkCVIxM4sYJuSdV_B99ijLm8vazmS9VyfGjfqqbdnd5Puq7rln80AL8ry_FU82HbHdq2jMCHbPTT-XzePz_ujbn4-NMqpFY7C_mmPVeOoXCiTpUyMinY7B12VUTCIqFTyl49J-lCjkJzFrIQaUMPvWKQEsGzQAhOE2TiaHNN3lUBioIinmOExIwZq45tlG0Y-V5Ypup8mcaYTDFWnmouyWFq0LhavVuWrEubH2n-n8B8Wqf1eNpuZyeROQSBpzPbzY724k-Noe_7l5zxdU79PKp-fXvRXih7Sd05ysWPq0N1AWItGQl8exei9uZZ9PqfqMPXSQ9Xo5pfow3VP2_M-iTG4oVqJGJqgpBCCFDSmI_4Pljx937_F3SQFG8&_tags=true\",\n    \"offset\": \"g1AAAAP-eJzV0DtyFDEQBmAZu7gGZDjwrFrqh6RJ4Cio9cBexrtVnlmfh5RTcLRFdkCVIxM4sYJuSdV_B99ijLm8vazmS9VyfGjfqqbdnd5Puq7rln80AL8ry_FU82HbHdq2jMCHbPTT-XzePz_ujbn4-NMqpFY7C_mmPVeOoXCiTpUyMinY7B12VUTCIqFTyl49J-lCjkJzFrIQaUMPvWKQEsGzQAhOE2TiaHNN3lUBioIinmOExIwZq45tlG0Y-V5Ypup8mcaYTDFWnmouyWFq0LhavVuWrEubH2n-n8B8Wqf1eNpuZyeROQSBpzPbzY724k-Noe_7l5zxdU79PKp-fXvRXih7Sd05ysWPq0N1AWItGQl8exei9uZZ9PqfqMPXSQ9Xo5pfow3VP2_M-iTG4oVqJGJqgpBCCFDSmI_4Pljx937_F3SQFG8\"\n  }\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Status 400",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Status 401",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "429": {
            "description": "Status 429",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Status 500",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/resource_groups/{resource_group_id}/resource_instances/usage/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getResourceUsageResourceGroupOptions := usageReportsService.NewGetResourceUsageResourceGroupOptions(\n",
                      "  accountID,\n",
                      "  resourceGroupID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "instancesUsage, response, err := usageReportsService.GetResourceUsageResourceGroup(getResourceUsageResourceGroupOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(instancesUsage, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetResourceUsageResourceGroupOptions getResourceUsageResourceGroupOptions = new GetResourceUsageResourceGroupOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .resourceGroupId(resourceGroupId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<InstancesUsage> response = service.getResourceUsageResourceGroup(getResourceUsageResourceGroupOptions).execute();\n",
                      "InstancesUsage instancesUsage = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getResourceUsageResourceGroup() result:\\n\" + instancesUsage.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  resourceGroupId: resourceGroupId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getResourceUsageResourceGroup(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "instances_usage = usage_reports_service.get_resource_usage_resource_group(\n",
                      "  account_id=account_id,\n",
                      "  resource_group_id=resource_group_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(instances_usage, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v4/accounts/{account_id}/organizations/{organization_id}/resource_instances/usage/{billingmonth}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Account_Id"
        },
        {
          "$ref": "#/components/parameters/Org_Id"
        },
        {
          "$ref": "#/components/parameters/Billing_Month"
        }
      ],
      "get": {
        "summary": "Get resource instance usage in an organization",
        "operationId": "get_resource_usage_org",
        "description": "Query for resource instance usage in an organization. Filter the results with query parameters. Account billing administrator and organization billing administrators are authorized to access this report.",
        "tags": [
          "Resource operations"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Include_Names"
          },
          {
            "$ref": "#/components/parameters/Include_Tags"
          },
          {
            "$ref": "#/components/parameters/Accept_Language"
          },
          {
            "$ref": "#/components/parameters/Limit_Query"
          },
          {
            "$ref": "#/components/parameters/Start_Query"
          },
          {
            "name": "resource_instance_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource instance id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resource_id",
            "in": "query",
            "required": false,
            "description": "Filter by resource_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "plan_id",
            "in": "query",
            "required": false,
            "description": "Filter by plan_id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "region",
            "in": "query",
            "required": false,
            "description": "Region in which the resource instance is provisioned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "x-ibm-permissions": {
          "description": null,
          "actions": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "x-ibm-events": {
          "description": null,
          "events": [
            {
              "name": "billing.usage-report.read"
            }
          ]
        },
        "responses": {
          "200": {
            "description": "Resource instance usage returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Instances_Usage"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"limit\": 3,\n  \"count\": 90,\n  \"first\": {\n    \"href\": \"/v4/accounts/265d9d22597d4ee589138929093f1246/organizations/us-south:54257f98-83f0-4eca-ae04-9ea35277a538/resource_instances/usage/2023-06?_limit=3&_names=true&_tags=true\"\n  },\n  \"resources\": [\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:f691fb7f-cae7-4094-9055-e85ade96f9e3\",\n      \"organization_id\": \"us-south:54257f98-83f0-4eca-ae04-9ea35277a538\",\n      \"space_id\": \"1ca5fea5-1d93-405c-84cc-7b20c1c199f9\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:f691fb7f-cae7-4094-9055-e85ade96f9e3:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"us-south\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 122.71594402777778,\n          \"cost\": 8.084526392549998,\n          \"rated_cost\": 8.982807102833332,\n          \"rateable_quantity\": 122.71594402777778,\n          \"discounts\": [\n            {\n              \"name\": \"Rajesh a paygo user gets discount on all services\",\n              \"display_name\": \"Rajesh a paygo user gets discount on all services\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"resource_instance_name\": \"account-apis\",\n      \"organization_name\": \"IBMBSS\",\n      \"space_name\": \"AcctMgmt\"\n    },\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:990935c8-7996-4ff4-867e-f9d76968c308\",\n      \"organization_id\": \"us-south:54257f98-83f0-4eca-ae04-9ea35277a538\",\n      \"space_id\": \"b8512d83-2e92-42ed-ac2a-f1e67ddd7ca4\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:990935c8-7996-4ff4-867e-f9d76968c308:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"us-south\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 1004.7370049435764,\n          \"cost\": 66.19207388568282,\n          \"rated_cost\": 73.5467487618698,\n          \"rateable_quantity\": 1004.7370049435764,\n          \"discounts\": [\n            {\n              \"name\": \"Rajesh a paygo user gets discount on all services\",\n              \"display_name\": \"Rajesh a paygo user gets discount on all services\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"resource_instance_name\": \"bssanalytics3-backend\",\n      \"space_name\": \"BSSDashboard\",\n      \"organization_name\": \"IBMBSS\"\n    },\n    {\n      \"account_id\": \"265d9d22597d4ee589138929093f1246\",\n      \"resource_instance_id\": \"cloud-foundry-application:b01a25b6-3a6d-4364-aa7d-2657ebe3b671\",\n      \"organization_id\": \"us-south:54257f98-83f0-4eca-ae04-9ea35277a538\",\n      \"space_id\": \"e7d62aa5-d8e4-4161-b526-ab6b0b4b826d\",\n      \"month\": \"2023-06\",\n      \"pricing_country\": \"USA\",\n      \"billing_country\": \"USA\",\n      \"currency_code\": \"USD\",\n      \"plan_id\": \"04082014.ibm.node.default\",\n      \"consumer_id\": \"cloud-foundry-application:b01a25b6-3a6d-4364-aa7d-2657ebe3b671:name:sdk-for-nodejs\",\n      \"resource_id\": \"sdk-for-nodejs\",\n      \"billable\": true,\n      \"pricing_plan_id\": \"billable:v4:04082014.ibm.node.default::1685577600000:\",\n      \"region\": \"us-south\",\n      \"usage\": [\n        {\n          \"metric\": \"GB_HOURS_PER_MONTH\",\n          \"unit\": \"GB-HOURS\",\n          \"price\": [\n            {\n              \"unitQuantity\": \"100\",\n              \"tier_model\": \"Granular Tier\",\n              \"price\": 7.32,\n              \"quantity_tier\": \"1\"\n            }\n          ],\n          \"quantity\": 981.72781,\n          \"cost\": 64.6762281228,\n          \"rated_cost\": 71.862475692,\n          \"rateable_quantity\": 981.72781,\n          \"discounts\": [\n            {\n              \"name\": \"Rajesh a paygo user gets discount on all services\",\n              \"display_name\": \"Rajesh a paygo user gets discount on all services\",\n              \"ref\": \"Discount-ddb74ac0-879e-46f2-9a07-a51dc8d6aeb2\",\n              \"discount\": 10\n            }\n          ],\n          \"metric_name\": \"GB_HOURS_PER_MONTH\",\n          \"unit_name\": \"GB_HOURS_PER_MONTH\"\n        }\n      ],\n      \"currency_rate\": 1,\n      \"tags\": [],\n      \"service_tags\": [],\n      \"plan_name\": \"Default\",\n      \"resource_name\": \"IBM Cloud Node.js\",\n      \"resource_instance_name\": \"account-worker-green\",\n      \"space_name\": \"RatingService\",\n      \"organization_name\": \"IBMBSS\"\n    }\n  ],\n  \"next\": {\n    \"href\": \"/v4/accounts/265d9d22597d4ee589138929093f1246/organizations/us-south:54257f98-83f0-4eca-ae04-9ea35277a538/resource_instances/usage/2023-06?_limit=3&_names=true&_start=g1AAAAIzeJy10DtOxEAMBuAIuAs0ydjjeZmKq3heLNlsIpGEmmPQcRUqrsFRlgQkaoSEi9-SLRf-hqZpLg6XubnOMU2P5S5H7h7iqY3zPC9yXwB0l4ZpzTIu3ViWYT8Yr7Zsnrd2Pp9f-6_ZaYv3o9LOZs5aW_bZlGIDIwXWDEwVtXFqndt5WpfDrTXa-sqhDVShNSVJKwVMy0XIau_FUlCQDVY0hDqKjeBYYqriKjrWJlSjGANTyZkNBK7a55CEwJCNlBDYKdgWGtDsX3XjlEuXS5V1WJQqT2Vc1KIAAF2w1nsHe8WmCb7fVW5-VBB_y_L2zfLxnywIhNUhiYYgUD0IxmiSOEhBKrDCyGQyJhetdk6QC5N14iJQqSnQH1n8S99_Alxom98&_tags=true\",\n    \"offset\": \"g1AAAAIzeJy10DtOxEAMBuAIuAs0ydjjeZmKq3heLNlsIpGEmmPQcRUqrsFRlgQkaoSEi9-SLRf-hqZpLg6XubnOMU2P5S5H7h7iqY3zPC9yXwB0l4ZpzTIu3ViWYT8Yr7Zsnrd2Pp9f-6_ZaYv3o9LOZs5aW_bZlGIDIwXWDEwVtXFqndt5WpfDrTXa-sqhDVShNSVJKwVMy0XIau_FUlCQDVY0hDqKjeBYYqriKjrWJlSjGANTyZkNBK7a55CEwJCNlBDYKdgWGtDsX3XjlEuXS5V1WJQqT2Vc1KIAAF2w1nsHe8WmCb7fVW5-VBB_y_L2zfLxnywIhNUhiYYgUD0IxmiSOEhBKrDCyGQyJhetdk6QC5N14iJQqSnQH1n8S99_Alxom98\"\n  }\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Status 400",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Status 401",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "429": {
            "description": "Status 429",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Status 500",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET -H \"Authorization: {iam_token}\" \\\n",
                      "  -H \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v4/accounts/{account_id}/organizations/{organization_id}/resource_instances/usage/{billingmonth}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getResourceUsageOrgOptions := usageReportsService.NewGetResourceUsageOrgOptions(\n",
                      "  accountID,\n",
                      "  orgID,\n",
                      "  billingMonth,\n",
                      ")\n",
                      "\n",
                      "instancesUsage, response, err := usageReportsService.GetResourceUsageOrg(getResourceUsageOrgOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(instancesUsage, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetResourceUsageOrgOptions getResourceUsageOrgOptions = new GetResourceUsageOrgOptions.Builder()\n",
                      "  .accountId(accountId)\n",
                      "  .organizationId(orgId)\n",
                      "  .billingmonth(billingMonth)\n",
                      "  .build();\n",
                      "\n",
                      "Response<InstancesUsage> response = service.getResourceUsageOrg(getResourceUsageOrgOptions).execute();\n",
                      "InstancesUsage instancesUsage = response.getResult();\n",
                      "\n",
                      "System.out.println(\"getResourceUsageOrg() result:\\n\" + instancesUsage.toString());"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: accountId,\n",
                      "  organizationId: orgId,\n",
                      "  billingmonth: billingMonth,\n",
                      "};\n",
                      "\n",
                      "usageReportsService.getResourceUsageOrg(params)\n",
                      "  .then(res => {\n",
                      "    console.log(JSON.stringify(res.result, null, 2));\n",
                      "  })\n",
                      "  .catch(err => {\n",
                      "    console.warn(err)\n",
                      "  });"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "instances_usage = usage_reports_service.get_resource_usage_org(\n",
                      "  account_id=account_id,\n",
                      "  organization_id=org_id,\n",
                      "  billingmonth=billing_month\n",
                      ").get_result()\n",
                      "\n",
                      "print(json.dumps(instances_usage, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v1/billing-reports-snapshot-config": {
      "post": {
        "summary": "Setup the snapshot configuration",
        "description": "Snapshots of the billing reports would be taken on a periodic interval and stored based on the configuration setup by the customer for the given Account Id.",
        "operationId": "create_reports_snapshot_config",
        "tags": [
          "Billing reports snapshot"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.billing-reports-snapshot-config.create"
            }
          ]
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Snapshot_Config_Create"
              }
            }
          },
          "required": true
        },
        "x-codegen-request-body-name": "snapshot_config_create",
        "responses": {
          "201": {
            "description": "Indicates that the billing reports snapshot for the respective account is successfully created with the submitted payload.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Snapshot_Config"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n  \"state\": \"enabled\",\n  \"account_type\": \"account\",\n  \"interval\": \"daily\",\n  \"versioning\": \"overwrite\",\n  \"report_types\": [\n    \"account_summary\",\n    \"account_resource_instance_usage\"\n  ],\n  \"compression\": \"GZIP\",\n  \"content_type\": \"text/csv\",\n  \"cos_reports_folder\": \"june\",\n  \"cos_bucket\": \"yue-bucket-us-south\",\n  \"cos_location\": \"us-south\",\n  \"cos_endpoint\": \"https://s3.us-west.cloud-object-storage.test.appdomain.cloud\",\n  \"created_at\": 1687469854342,\n  \"last_updated_at\": 1687470383610,\n  \"history\": [\n    {\n      \"start_time\": 1687469854342,\n      \"updated_by\": \"IBMid-506PR16K14\",\n      \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n      \"state\": \"enabled\",\n      \"account_type\": \"account\",\n      \"interval\": \"daily\",\n      \"versioning\": \"overwrite\",\n      \"report_types\": [\n        \"account_summary\",\n        \"account_resource_instance_usage\"\n      ],\n      \"compression\": \"GZIP\",\n      \"content_type\": \"text/csv\",\n      \"cos_reports_folder\": \"june\",\n      \"cos_bucket\": \"yue-bucket-us-south\",\n      \"cos_location\": \"us-south\",\n      \"cos_endpoint\": \"https://s3.us-west.cloud-object-storage.test.appdomain.cloud\"\n    }\n  ]\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "424": {
            "description": "Dependency failure",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer {iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"account_id\": \"accountId\", \"interval\": \"daily\", \"cos_bucket\": \"bucket_name\", \"cos_location\": \"us-south\" }' \\\n",
                      "  \"{base_url}/v1/billing-reports-snapshot-config\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "createReportsSnapshotConfigOptions := usageReportsService.NewCreateReportsSnapshotConfigOptions(\n",
                      "  \"accountId\",\n",
                      "  \"daily\",\n",
                      "  \"bucket_name\",\n",
                      "  \"us-south\",\n",
                      ")\n",
                      "\n",
                      "snapshotConfig, response, err := usageReportsService.CreateReportsSnapshotConfig(createReportsSnapshotConfigOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(snapshotConfig, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "CreateReportsSnapshotConfigOptions createReportsSnapshotConfigOptions = new CreateReportsSnapshotConfigOptions.Builder()\n",
                      "  .accountId(\"accountId\")\n",
                      "  .interval(\"daily\")\n",
                      "  .cosBucket(\"bucket_name\")\n",
                      "  .cosLocation(\"us-south\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<SnapshotConfig> response = usageReportsService.createReportsSnapshotConfig(createReportsSnapshotConfigOptions).execute();\n",
                      "SnapshotConfig snapshotConfig = response.getResult();\n",
                      "\n",
                      "System.out.println(snapshotConfig);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: 'accountId',\n",
                      "  interval: 'daily',\n",
                      "  cosBucket: 'bucket_name',\n",
                      "  cosLocation: 'us-south',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await usageReportsService.createReportsSnapshotConfig(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = usage_reports_service.create_reports_snapshot_config(\n",
                      "  account_id='accountId',\n",
                      "  interval='daily',\n",
                      "  cos_bucket='bucket_name',\n",
                      "  cos_location='us-south',\n",
                      ")\n",
                      "snapshot_config = response.get_result()\n",
                      "\n",
                      "print(json.dumps(snapshot_config, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "get": {
        "summary": "Fetch the snapshot configuration",
        "description": "Returns the configuration of snapshot of the billing reports setup by the customer for the given Account Id.",
        "operationId": "get_reports_snapshot_config",
        "tags": [
          "Billing reports snapshot"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.billing-reports-snapshot-config.read"
            }
          ]
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/Account_Id_Config_Query"
          }
        ],
        "responses": {
          "200": {
            "description": "Snapshot configuration was returned successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Snapshot_Config"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n  \"state\": \"enabled\",\n  \"account_type\": \"account\",\n  \"interval\": \"daily\",\n  \"versioning\": \"overwrite\",\n  \"report_types\": [\n    \"account_summary\",\n    \"account_resource_instance_usage\"\n  ],\n  \"compression\": \"GZIP\",\n  \"content_type\": \"text/csv\",\n  \"cos_reports_folder\": \"june\",\n  \"cos_bucket\": \"yue-bucket-us-south\",\n  \"cos_location\": \"us-south\",\n  \"cos_endpoint\": \"https://s3.us-west.cloud-object-storage.test.appdomain.cloud\",\n  \"created_at\": 1687469854342,\n  \"last_updated_at\": 1687470383610,\n  \"history\": [\n    {\n        \"start_time\": 1687469854342,\n        \"end_time\": 1687469989326,\n        \"updated_by\": \"IBMid-506PR16K14\",\n        \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n        \"state\": \"enabled\",\n        \"account_type\": \"account\",\n        \"interval\": \"daily\",\n        \"versioning\": \"overwrite\",\n        \"report_types\": [\n            \"account_summary\",\n            \"account_resource_instance_usage\"\n        ],\n        \"compression\": \"GZIP\",\n        \"content_type\": \"text/csv\",\n        \"cos_reports_folder\": \"june\",\n        \"cos_bucket\": \"yue-bucket-us-south\",\n        \"cos_location\": \"us-south\",\n        \"cos_endpoint\": \"https://s3.us-west.cloud-object-storage.test.appdomain.cloud\"\n    }\n  ]\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer {iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v1/billing-reports-snapshot-config?account_id=accountId\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getReportsSnapshotConfigOptions := usageReportsService.NewGetReportsSnapshotConfigOptions(\n",
                      "  \"accountId\",\n",
                      ")\n",
                      "\n",
                      "snapshotConfig, response, err := usageReportsService.GetReportsSnapshotConfig(getReportsSnapshotConfigOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(snapshotConfig, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetReportsSnapshotConfigOptions getReportsSnapshotConfigOptions = new GetReportsSnapshotConfigOptions.Builder()\n",
                      "  .accountId(\"accountId\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<SnapshotConfig> response = usageReportsService.getReportsSnapshotConfig(getReportsSnapshotConfigOptions).execute();\n",
                      "SnapshotConfig snapshotConfig = response.getResult();\n",
                      "\n",
                      "System.out.println(snapshotConfig);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: 'accountId',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await usageReportsService.getReportsSnapshotConfig(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = usage_reports_service.get_reports_snapshot_config(\n",
                      "  account_id='accountId',\n",
                      ")\n",
                      "snapshot_config = response.get_result()\n",
                      "\n",
                      "print(json.dumps(snapshot_config, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "patch": {
        "summary": "Update the snapshot configuration",
        "description": "Updates the configuration of snapshot of the billing reports setup by the customer for the given Account Id.",
        "operationId": "update_reports_snapshot_config",
        "tags": [
          "Billing reports snapshot"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.billing-reports-snapshot-config.update"
            }
          ]
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Snapshot_Config_Update"
              }
            }
          },
          "required": true
        },
        "x-codegen-request-body-name": "snapshot_config_update",
        "responses": {
          "200": {
            "description": "Indicates that the billing reports snapshot for the respective account is successfully updated with the submitted payload.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Snapshot_Config"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n  \"state\": \"enabled\",\n  \"account_type\": \"account\",\n  \"interval\": \"daily\",\n  \"versioning\": \"new\",\n  \"report_types\": [\n    \"account_summary\",\n    \"account_resource_instance_usage\"\n  ],\n  \"compression\": \"GZIP\",\n  \"content_type\": \"text/csv\",\n  \"cos_reports_folder\": \"standalone account\",\n  \"cos_bucket\": \"yue-bucket-us-south\",\n  \"cos_location\": \"us-south\",\n  \"cos_endpoint\": \"https://s3.us-west.cloud-object-storage.test.appdomain.cloud\",\n  \"created_at\": 1687469854342,\n  \"last_updated_at\": 1687469989326,\n  \"history\": [\n    {\n      \"start_time\": 1687469854342,\n      \"end_time\": 1687469989326,\n      \"updated_by\": \"IBMid-506PR16K14\",\n      \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n      \"state\": \"enabled\",\n      \"account_type\": \"account\",\n      \"interval\": \"daily\",\n      \"versioning\": \"overwrite\",\n      \"report_types\": [\n        \"account_summary\",\n        \"account_resource_instance_usage\"\n      ],\n      \"compression\": \"GZIP\",\n      \"content_type\": \"text/csv\",\n      \"cos_reports_folder\": \"june\",\n      \"cos_bucket\": \"yue-bucket-us-south\",\n      \"cos_location\": \"us-south\",\n      \"cos_endpoint\": \"https://s3.us-west.cloud-object-storage.test.appdomain.cloud\"\n    }\n  ]\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "424": {
            "description": "Dependency failure",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X PATCH --location --header \"Authorization: Bearer {iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"account_id\": \"accountId\" }' \\\n",
                      "  \"{base_url}/v1/billing-reports-snapshot-config\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "updateReportsSnapshotConfigOptions := usageReportsService.NewUpdateReportsSnapshotConfigOptions(\n",
                      "  \"accountId\",\n",
                      ")\n",
                      "\n",
                      "snapshotConfig, response, err := usageReportsService.UpdateReportsSnapshotConfig(updateReportsSnapshotConfigOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(snapshotConfig, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "UpdateReportsSnapshotConfigOptions updateReportsSnapshotConfigOptions = new UpdateReportsSnapshotConfigOptions.Builder()\n",
                      "  .accountId(\"accountId\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<SnapshotConfig> response = usageReportsService.updateReportsSnapshotConfig(updateReportsSnapshotConfigOptions).execute();\n",
                      "SnapshotConfig snapshotConfig = response.getResult();\n",
                      "\n",
                      "System.out.println(snapshotConfig);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: 'accountId',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await usageReportsService.updateReportsSnapshotConfig(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = usage_reports_service.update_reports_snapshot_config(\n",
                      "  account_id='accountId',\n",
                      ")\n",
                      "snapshot_config = response.get_result()\n",
                      "\n",
                      "print(json.dumps(snapshot_config, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "delete": {
        "summary": "Delete the snapshot configuration",
        "description": "Delete the configuration of snapshot of the billing reports setup by the customer for the given Account Id.",
        "operationId": "delete_reports_snapshot_config",
        "tags": [
          "Billing reports snapshot"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.billing-reports-snapshot-config.delete"
            }
          ]
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/Account_Id_Config_Query"
          }
        ],
        "responses": {
          "204": {
            "description": "Snapshot configuration was deleted successfully."
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X DELETE --location --header \"Authorization: Bearer {iam_token}\" \\\n",
                      "  \"{base_url}/v1/billing-reports-snapshot-config?account_id=accountId\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "deleteReportsSnapshotConfigOptions := usageReportsService.NewDeleteReportsSnapshotConfigOptions(\n",
                      "  \"accountId\",\n",
                      ")\n",
                      "\n",
                      "response, err := usageReportsService.DeleteReportsSnapshotConfig(deleteReportsSnapshotConfigOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from DeleteReportsSnapshotConfig(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "DeleteReportsSnapshotConfigOptions deleteReportsSnapshotConfigOptions = new DeleteReportsSnapshotConfigOptions.Builder()\n",
                      "  .accountId(\"accountId\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = usageReportsService.deleteReportsSnapshotConfig(deleteReportsSnapshotConfigOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: 'accountId',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await usageReportsService.deleteReportsSnapshotConfig(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = usage_reports_service.delete_reports_snapshot_config(\n",
                      "  account_id='accountId',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v1/billing-reports-snapshot-config/validate": {
      "post": {
        "summary": "Verify billing to COS authorization",
        "description": "Verify billing service to COS bucket authorization for the given account_id. If COS bucket information is not provided, COS bucket information is retrieved from the configuration file.",
        "operationId": "validate_reports_snapshot_config",
        "tags": [
          "Billing reports snapshot"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.billing-reports-snapshot-config.create"
            }
          ]
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Snapshot_Config_Validate"
              }
            }
          },
          "required": true
        },
        "x-codegen-request-body-name": "snapshot_config_validate",
        "responses": {
          "200": {
            "description": "Indicates that authorization exists between the billing service and the COS service for the given configuration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Snapshot_Config_Validate_Response"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n  \"cos_bucket\": \"yue-bucket-us-south\",\n  \"cos_location\": \"us-south\",\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "424": {
            "description": "Dependency failure",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer {iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"account_id\": \"accountId\" }' \\\n",
                      "  \"{base_url}/v1/billing-reports-snapshot-config/validate\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "validateReportsSnapshotConfigOptions := usageReportsService.NewValidateReportsSnapshotConfigOptions(\n",
                      "  \"accountId\",\n",
                      ")\n",
                      "\n",
                      "snapshotConfigValidateResponse, response, err := usageReportsService.ValidateReportsSnapshotConfig(validateReportsSnapshotConfigOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(snapshotConfigValidateResponse, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ValidateReportsSnapshotConfigOptions validateReportsSnapshotConfigOptions = new ValidateReportsSnapshotConfigOptions.Builder()\n",
                      "  .accountId(\"accountId\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<SnapshotConfigValidateResponse> response = usageReportsService.validateReportsSnapshotConfig(validateReportsSnapshotConfigOptions).execute();\n",
                      "SnapshotConfigValidateResponse snapshotConfigValidateResponse = response.getResult();\n",
                      "\n",
                      "System.out.println(snapshotConfigValidateResponse);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: 'accountId',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await usageReportsService.validateReportsSnapshotConfig(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = usage_reports_service.validate_reports_snapshot_config(\n",
                      "  account_id='accountId',\n",
                      ")\n",
                      "snapshot_config_validate_response = response.get_result()\n",
                      "\n",
                      "print(json.dumps(snapshot_config_validate_response, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/v1/billing-reports-snapshots": {
      "get": {
        "summary": "Fetch the current or past snapshots",
        "description": "Returns the billing reports snapshots captured for the given Account Id in the specific time period.",
        "operationId": "get_reports_snapshot",
        "tags": [
          "Billing reports snapshot"
        ],
        "x-ibm-permissions": {
          "actions": [
            {
              "name": "billing.billing-reports-snapshot.read"
            }
          ]
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/Account_Id_Snapshot_Query"
          },
          {
            "$ref": "#/components/parameters/Month_Query"
          },
          {
            "$ref": "#/components/parameters/Date_From_Query"
          },
          {
            "$ref": "#/components/parameters/Date_To_Query"
          },
          {
            "$ref": "#/components/parameters/Limit_Query"
          },
          {
            "$ref": "#/components/parameters/Start_Query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of snapshots were returned successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SnapshotList"
                },
                "examples": {
                  "response": {
                    "value": "{\n  \"count\": 3,\n  \"first\": {\n    \"href\": \"/v1/billing-reports-snapshots?_limit=10&account_id=272b9a4f73e11030d0ba037daee47a35&date_from=-Infinity&date_to=Infinity&month=2023-06\"\n  },\n  \"snapshots\": [\n    {\n        \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n        \"month\": \"2023-06\",\n        \"account_type\": \"account\",\n        \"expected_processed_at\": 1687556848297,\n        \"state\": \"pending\",\n        \"billing_period\": {\n            \"start\": \"2023-06-01T00:00:00.000Z\",\n            \"end\": \"2023-06-30T23:59:59.999Z\"\n        }\n    },\n    {\n        \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n        \"month\": \"2023-06\",\n        \"account_type\": \"account\",\n        \"expected_processed_at\": 1687470383610,\n        \"state\": \"completed\",\n        \"billing_period\": {\n            \"start\": \"2023-06-01T00:00:00.000Z\",\n            \"end\": \"2023-06-30T23:59:59.999Z\"\n        },\n        \"snapshot_id\": \"1685577600000\",\n        \"charset\": \"UTF-8\",\n        \"compression\": \"GZIP\",\n        \"content_type\": \"text/csv\",\n        \"bucket\": \"yue-bucket-us-south\",\n        \"version\": \"1.0\",\n        \"created_on\": \"2023-06-22T21:47:28.297Z\",\n        \"report_types\": [\n            {\n                \"type\": \"account_summary\",\n                \"version\": \"1.0\"\n            },\n            {\n                \"type\": \"account_resource_instance_usage\",\n                \"version\": \"1.0\"\n            }\n        ],\n        \"files\": [\n            {\n                \"report_type\": \"account_summary\",\n                \"location\": \"june/2023-06/1685577600000/2023-06-account-summary-272b9a4f73e11030d0ba037daee47a35.csv.gz\",\n                \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\"\n            },\n            {\n                \"report_type\": \"account_resource_instance_usage\",\n                \"location\": \"june/2023-06/1685577600000/2023-06-resource-instances-usage-272b9a4f73e11030d0ba037daee47a35.csv.gz\",\n                \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\"\n            }\n        ],\n        \"processed_at\": 1687470448297\n    },\n    {\n        \"account_id\": \"272b9a4f73e11030d0ba037daee47a35\",\n        \"month\": \"2023-06\",\n        \"account_type\": \"account\",\n        \"expected_processed_at\": 1687469854342,\n        \"state\": \"disabled\",\n        \"billing_period\": {\n            \"start\": \"2023-06-01T00:00:00.000Z\",\n            \"end\": \"2023-06-30T23:59:59.999Z\"\n        },\n        \"processed_at\": 1687470202011\n    }\n  ]\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "401": {
            "description": "Unauthenticated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "403": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error_Model"
                }
              }
            }
          }
        },
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer {iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"{base_url}/v1/billing-reports-snapshots?account_id=accountId&month=2023-02&date_from=1675209600000&date_to=1675987200000\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getReportsSnapshotOptions := &usagereportsv4.GetReportsSnapshotOptions{\n",
                      "  AccountID: core.StringPtr(\"accountId\"),\n",
                      "  Month: core.StringPtr(\"2023-02\"),\n",
                      "  DateFrom: core.Int64Ptr(int64(1675209600000)),\n",
                      "  DateTo: core.Int64Ptr(int64(1675987200000)),\n",
                      "  Limit: core.Int64Ptr(int64(30)),\n",
                      "}\n",
                      "\n",
                      "pager, err := usageReportsService.NewGetReportsSnapshotPager(getReportsSnapshotOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "\n",
                      "var allResults []usagereportsv4.SnapshotListSnapshotsItem\n",
                      "for pager.HasNext() {\n",
                      "  nextPage, err := pager.GetNext()\n",
                      "  if err != nil {\n",
                      "    panic(err)\n",
                      "  }\n",
                      "  allResults = append(allResults, nextPage...)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(allResults, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetReportsSnapshotOptions getReportsSnapshotOptions = new GetReportsSnapshotOptions.Builder()\n",
                      "  .accountId(\"accountId\")\n",
                      "  .month(\"2023-02\")\n",
                      "  .dateFrom(Long.valueOf(\"1675209600000\"))\n",
                      "  .dateTo(Long.valueOf(\"1675987200000\"))\n",
                      "  .limit(Long.valueOf(\"30\"))\n",
                      "  .build();\n",
                      "\n",
                      "GetReportsSnapshotPager pager = new GetReportsSnapshotPager(usageReportsService, getReportsSnapshotOptions);\n",
                      "List<SnapshotListSnapshotsItem> allResults = new ArrayList<>();\n",
                      "while (pager.hasNext()) {\n",
                      "  List<SnapshotListSnapshotsItem> nextPage = pager.getNext();\n",
                      "  allResults.addAll(nextPage);\n",
                      "}\n",
                      "\n",
                      "System.out.println(GsonSingleton.getGson().toJson(allResults));"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  accountId: 'accountId',\n",
                      "  month: '2023-02',\n",
                      "  dateFrom: 1675209600000,\n",
                      "  dateTo: 1675987200000,\n",
                      "  limit: 30,\n",
                      "};\n",
                      "\n",
                      "const allResults = [];\n",
                      "try {\n",
                      "  const pager = new UsageReportsV4.GetReportsSnapshotPager(usageReportsService, params);\n",
                      "  while (pager.hasNext()) {\n",
                      "    const nextPage = await pager.getNext();\n",
                      "    expect(nextPage).not.toBeNull();\n",
                      "    allResults.push(...nextPage);\n",
                      "  }\n",
                      "  console.log(JSON.stringify(allResults, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "all_results = []\n",
                      "pager = GetReportsSnapshotPager(\n",
                      "  client=usage_reports_service,\n",
                      "  account_id='accountId',\n",
                      "  month='2023-02',\n",
                      "  date_from=1675209600000,\n",
                      "  date_to=1675987200000,\n",
                      "  limit=30,\n",
                      ")\n",
                      "while pager.has_next():\n",
                      "  next_page = pager.get_next()\n",
                      "  assert next_page is not None\n",
                      "  all_results.extend(next_page)\n",
                      "\n",
                      "print(json.dumps(all_results, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "IAM": {
        "type": "apiKey",
        "name": "Authorization",
        "in": "header",
        "description": "A valid IAM access token"
      }
    },
    "parameters": {
      "Account_Id": {
        "name": "account_id",
        "in": "path",
        "required": true,
        "description": "Account ID for which the usage report is requested",
        "schema": {
          "type": "string"
        }
      },
      "Resource_Group_Id": {
        "name": "resource_group_id",
        "in": "path",
        "required": true,
        "description": "Resource group for which the usage report is requested.",
        "schema": {
          "type": "string"
        }
      },
      "Org_Id": {
        "name": "organization_id",
        "in": "path",
        "required": true,
        "description": "ID of the organization.",
        "schema": {
          "type": "string"
        }
      },
      "Billing_Month": {
        "name": "billingmonth",
        "in": "path",
        "required": true,
        "description": "The billing month for which the usage report is requested.  Format is yyyy-mm.",
        "schema": {
          "type": "string",
          "pattern": "^\\d{4}\\-(0?[1-9]|1[012])$"
        }
      },
      "Accept_Language": {
        "name": "Accept-Language",
        "in": "header",
        "required": false,
        "description": "Prioritize the names returned in the order of the specified languages. Language will default to English.",
        "schema": {
          "type": "string"
        }
      },
      "Limit_Query": {
        "name": "_limit",
        "in": "query",
        "required": false,
        "description": "Number of usage records returned. The default value is 30. Maximum value is 200.",
        "schema": {
          "type": "integer",
          "format": "int32",
          "minimum": 1,
          "maximum": 200,
          "default": 30
        }
      },
      "Start_Query": {
        "name": "_start",
        "in": "query",
        "required": false,
        "description": "The offset from which the records must be fetched. Offset information is included in the response.",
        "schema": {
          "type": "string"
        }
      },
      "Include_Names": {
        "name": "_names",
        "in": "query",
        "required": false,
        "description": "Include the name of every resource, plan, resource instance, organization, and resource group.",
        "schema": {
          "type": "boolean"
        }
      },
      "Include_Tags": {
        "name": "_tags",
        "in": "query",
        "required": false,
        "description": "Include the tags associated with every resource instance. By default it is always `true`.",
        "schema": {
          "type": "boolean"
        }
      },
      "Format_Query": {
        "name": "format",
        "in": "query",
        "required": false,
        "description": "The format of the response. Use `json` for paginated JSON response from the metering-reporting API, or `csv` to download a CSV file from the metering-report-downloader service. Defaults to `json`.",
        "schema": {
          "type": "string",
          "enum": [
            "json",
            "csv"
          ],
          "default": "json"
        }
      },
      "X_Focus_Version_Header": {
        "name": "x-focus-version",
        "in": "header",
        "required": false,
        "description": "The FOCUS specification version to use for the response. Currently only version `1.2` is supported. Defaults to `1.2` if not specified.",
        "schema": {
          "type": "string",
          "enum": [
            "1.2"
          ],
          "default": "1.2"
        }
      },
      "Account_Id_Config_Query": {
        "name": "account_id",
        "in": "query",
        "required": true,
        "description": "Account ID for which the billing report snapshot is configured.",
        "schema": {
          "type": "string",
          "example": "abc"
        }
      },
      "Account_Id_Snapshot_Query": {
        "name": "account_id",
        "in": "query",
        "required": true,
        "description": "Account ID for which the billing report snapshot is requested.",
        "schema": {
          "type": "string",
          "example": "abc"
        }
      },
      "Month_Query": {
        "name": "month",
        "in": "query",
        "required": true,
        "description": "The month for which billing report snapshot is requested.  Format is yyyy-mm.",
        "schema": {
          "type": "string",
          "example": "2023-02"
        }
      },
      "Date_From_Query": {
        "name": "date_from",
        "in": "query",
        "required": false,
        "description": "Timestamp in milliseconds for which billing report snapshot is requested.",
        "schema": {
          "type": "integer",
          "format": "int64",
          "example": 1675209600000
        }
      },
      "Date_To_Query": {
        "name": "date_to",
        "in": "query",
        "required": false,
        "description": "Timestamp in milliseconds for which billing report snapshot is requested.",
        "schema": {
          "type": "integer",
          "format": "int64",
          "example": 1675987200000
        }
      }
    },
    "schemas": {
      "Snapshot_Config_Create": {
        "description": "Request payload to create a billing reports snapshot configuration.",
        "type": "object",
        "required": [
          "account_id",
          "interval",
          "cos_bucket",
          "cos_location"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "Account ID for which billing report snapshot is configured.",
            "example": "abc"
          },
          "interval": {
            "type": "string",
            "description": "Frequency of taking the snapshot of the billing reports.",
            "enum": [
              "daily"
            ],
            "example": "daily"
          },
          "cos_bucket": {
            "type": "string",
            "description": "The name of the COS bucket to store the snapshot of the billing reports.",
            "example": "bucket_name"
          },
          "cos_location": {
            "type": "string",
            "description": "Region of the COS instance.",
            "example": "us-south"
          },
          "cos_reports_folder": {
            "type": "string",
            "description": "The billing reports root folder to store the billing reports snapshots. Defaults to \"IBMCloud-Billing-Reports\"",
            "default": "IBMCloud-Billing-Reports",
            "example": "IBMCloud-Billing-Reports"
          },
          "report_types": {
            "type": "array",
            "description": "The type of billing reports to take snapshot of. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
            "items": {
              "type": "string",
              "enum": [
                "account_summary",
                "enterprise_summary",
                "account_resource_instance_usage"
              ]
            },
            "example": [
              "account_summary",
              "enterprise_summary",
              "account_resource_instance_usage"
            ]
          },
          "versioning": {
            "type": "string",
            "description": "A new version of report is created or the existing report version is overwritten with every update. Defaults to \"new\"",
            "enum": [
              "new",
              "overwrite"
            ],
            "default": "new",
            "example": "new"
          }
        }
      },
      "Snapshot_Config": {
        "description": "Billing reports snapshot configuration.",
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "description": "Account ID for which billing report snapshot is configured.",
            "example": "abc"
          },
          "state": {
            "type": "string",
            "description": "Status of the billing snapshot configuration. Possible values are [enabled, disabled].",
            "enum": [
              "enabled",
              "disabled"
            ],
            "example": "enabled"
          },
          "account_type": {
            "type": "string",
            "description": "Type of account. Possible values are [enterprise, account].",
            "enum": [
              "account",
              "enterprise"
            ],
            "example": "account"
          },
          "interval": {
            "type": "string",
            "description": "Frequency of taking the snapshot of the billing reports.",
            "enum": [
              "daily"
            ],
            "example": "daily"
          },
          "versioning": {
            "type": "string",
            "description": "A new version of report is created or the existing report version is overwritten with every update.",
            "enum": [
              "new",
              "overwrite"
            ],
            "default": "new",
            "example": "new"
          },
          "report_types": {
            "type": "array",
            "description": "The type of billing reports to take snapshot of. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
            "items": {
              "type": "string",
              "enum": [
                "account_summary",
                "enterprise_summary",
                "account_resource_instance_usage"
              ]
            },
            "example": [
              "account_summary",
              "enterprise_summary",
              "account_resource_instance_usage"
            ]
          },
          "compression": {
            "type": "string",
            "description": "Compression format of the snapshot report.",
            "example": "GZIP"
          },
          "content_type": {
            "type": "string",
            "description": "Type of content stored in snapshot report.",
            "example": "text/csv"
          },
          "cos_reports_folder": {
            "type": "string",
            "description": "The billing reports root folder to store the billing reports snapshots. Defaults to \"IBMCloud-Billing-Reports\"",
            "default": "IBMCloud-Billing-Reports",
            "example": "IBMCloud-Billing-Reports"
          },
          "cos_bucket": {
            "type": "string",
            "description": "The name of the COS bucket to store the snapshot of the billing reports.",
            "example": "bucket_name"
          },
          "cos_location": {
            "type": "string",
            "description": "Region of the COS instance.",
            "example": "us-south"
          },
          "cos_endpoint": {
            "type": "string",
            "description": "The endpoint of the COS instance.",
            "example": "https://s3.us-west.cloud-object-storage.test.appdomain.cloud"
          },
          "created_at": {
            "type": "integer",
            "format": "int64",
            "description": "Timestamp in milliseconds when the snapshot configuration was created.",
            "example": 1687469854342
          },
          "last_updated_at": {
            "type": "integer",
            "format": "int64",
            "description": "Timestamp in milliseconds when the snapshot configuration was last updated.",
            "example": 1687469989326
          },
          "history": {
            "type": "array",
            "description": "List of previous versions of the snapshot configurations.",
            "items": {
              "type": "object",
              "properties": {
                "start_time": {
                  "type": "integer",
                  "format": "int64",
                  "description": "Timestamp in milliseconds when the snapshot configuration was created.",
                  "example": 1687469854342
                },
                "end_time": {
                  "type": "integer",
                  "format": "int64",
                  "description": "Timestamp in milliseconds when the snapshot configuration ends.",
                  "example": 1687469989326
                },
                "updated_by": {
                  "type": "string",
                  "description": "Account that updated the billing snapshot configuration.",
                  "example": "IBMid-506PR16K14"
                },
                "account_id": {
                  "type": "string",
                  "description": "Account ID for which billing report snapshot is configured.",
                  "example": "abc"
                },
                "state": {
                  "type": "string",
                  "description": "Status of the billing snapshot configuration. Possible values are [enabled, disabled].",
                  "enum": [
                    "enabled",
                    "disabled"
                  ],
                  "example": "enabled"
                },
                "account_type": {
                  "type": "string",
                  "description": "Type of account. Possible values [enterprise, account].",
                  "enum": [
                    "account",
                    "enterprise"
                  ],
                  "example": "account"
                },
                "interval": {
                  "type": "string",
                  "description": "Frequency of taking the snapshot of the billing reports.",
                  "enum": [
                    "daily"
                  ],
                  "example": "daily"
                },
                "versioning": {
                  "type": "string",
                  "description": "A new version of report is created or the existing report version is overwritten with every update.",
                  "enum": [
                    "new",
                    "overwrite"
                  ],
                  "default": "new",
                  "example": "new"
                },
                "report_types": {
                  "type": "array",
                  "description": "The type of billing reports to take snapshot of. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
                  "items": {
                    "type": "string",
                    "enum": [
                      "account_summary",
                      "enterprise_summary",
                      "account_resource_instance_usage"
                    ]
                  },
                  "example": [
                    "account_summary",
                    "enterprise_summary",
                    "account_resource_instance_usage"
                  ]
                },
                "compression": {
                  "type": "string",
                  "description": "Compression format of the snapshot report.",
                  "example": "GZIP"
                },
                "content_type": {
                  "type": "string",
                  "description": "Type of content stored in snapshot report.",
                  "example": "text/csv"
                },
                "cos_reports_folder": {
                  "type": "string",
                  "description": "The billing reports root folder to store the billing reports snapshots. Defaults to \"IBMCloud-Billing-Reports\"",
                  "default": "IBMCloud-Billing-Reports",
                  "example": "IBMCloud-Billing-Reports"
                },
                "cos_bucket": {
                  "type": "string",
                  "description": "The name of the COS bucket to store the snapshot of the billing reports.",
                  "example": "bucket_name"
                },
                "cos_location": {
                  "type": "string",
                  "description": "Region of the COS instance.",
                  "example": "us-south"
                },
                "cos_endpoint": {
                  "type": "string",
                  "description": "The endpoint of the COS instance.",
                  "example": "https://s3.us-west.cloud-object-storage.test.appdomain.cloud"
                }
              }
            }
          }
        }
      },
      "Snapshot_Config_Update": {
        "description": "Request payload to update the billing reports snapshot configuration for specific Account ID.",
        "type": "object",
        "required": [
          "account_id"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "Account ID for which billing report snapshot is configured.",
            "example": "abc"
          },
          "interval": {
            "type": "string",
            "description": "Frequency of taking the snapshot of the billing reports.",
            "enum": [
              "daily"
            ],
            "example": "daily"
          },
          "cos_bucket": {
            "type": "string",
            "description": "The name of the COS bucket to store the snapshot of the billing reports.",
            "example": "bucket_name"
          },
          "cos_location": {
            "type": "string",
            "description": "Region of the COS instance.",
            "example": "us-south"
          },
          "cos_reports_folder": {
            "type": "string",
            "description": "The billing reports root folder to store the billing reports snapshots.",
            "example": "IBMCloud-Billing-Reports"
          },
          "report_types": {
            "type": "array",
            "description": "The type of billing reports to take snapshot of. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
            "items": {
              "type": "string",
              "enum": [
                "account_summary",
                "enterprise_summary",
                "account_resource_instance_usage"
              ]
            },
            "example": [
              "account_summary",
              "enterprise_summary",
              "account_resource_instance_usage"
            ]
          },
          "versioning": {
            "type": "string",
            "description": "A new version of report is created or the existing report version is overwritten with every update.",
            "enum": [
              "new",
              "overwrite"
            ],
            "example": "new"
          }
        }
      },
      "SnapshotList": {
        "description": "List of billing reports snapshots.",
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "format": "int64",
            "description": "Number of total snapshots.",
            "example": 3
          },
          "first": {
            "type": "object",
            "description": "Reference to the first page of the search query.",
            "properties": {
              "href": {
                "type": "string",
                "example": "/v1/billing-reports-snapshots?_limit=10&account_id=272b9a4f73e11030d0ba037daee47a35&date_from=-Infinity&date_to=Infinity&month=2023-06"
              }
            }
          },
          "next": {
            "type": "object",
            "description": "Reference to the next page of the search query if any.",
            "properties": {
              "href": {
                "type": "string",
                "example": "/v1/billing-reports-snapshots?_limit=10&account_id=272b9a4f73e11030d0ba037daee47a35&date_from=-Infinity&date_to=Infinity&month=2023-06"
              },
              "offset": {
                "type": "string",
                "description": "The value of the `_start` query parameter to fetch the next page."
              }
            }
          },
          "snapshots": {
            "type": "array",
            "items": {
              "type": "object",
              "description": "Snapshot Schema",
              "properties": {
                "account_id": {
                  "type": "string",
                  "description": "Account ID for which billing report snapshot is configured.",
                  "example": "abc"
                },
                "month": {
                  "type": "string",
                  "description": "Month of captured snapshot.",
                  "pattern": "^\\d{4}\\-(0?[1-9]|1[012])$",
                  "example": "2023-06"
                },
                "account_type": {
                  "type": "string",
                  "description": "Type of account. Possible values are [enterprise, account].",
                  "enum": [
                    "account",
                    "enterprise"
                  ],
                  "example": "account"
                },
                "expected_processed_at": {
                  "type": "integer",
                  "format": "int64",
                  "description": "Timestamp of snapshot processed.",
                  "example": 1687470383610
                },
                "state": {
                  "type": "string",
                  "description": "Status of the billing snapshot configuration. Possible values are [enabled, disabled].",
                  "enum": [
                    "enabled",
                    "disabled"
                  ],
                  "example": "enabled"
                },
                "billing_period": {
                  "type": "object",
                  "description": "Period of billing in snapshot.",
                  "properties": {
                    "start": {
                      "type": "string",
                      "description": "Date and time of start of billing in the respective snapshot.",
                      "example": "2023-06-01T00:00:00.000Z"
                    },
                    "end": {
                      "type": "string",
                      "description": "Date and time of end of billing in the respective snapshot.",
                      "example": "2023-06-30T23:59:59.999Z"
                    }
                  }
                },
                "snapshot_id": {
                  "type": "string",
                  "description": "Id of the snapshot captured.",
                  "example": "1685577600000"
                },
                "charset": {
                  "type": "string",
                  "description": "Character encoding used.",
                  "example": "UTF-8"
                },
                "compression": {
                  "type": "string",
                  "description": "Compression format of the snapshot report.",
                  "example": "GZIP"
                },
                "content_type": {
                  "type": "string",
                  "description": "Type of content stored in snapshot report.",
                  "example": "text/csv"
                },
                "bucket": {
                  "type": "string",
                  "description": "The name of the COS bucket to store the snapshot of the billing reports.",
                  "example": "bucket_name"
                },
                "version": {
                  "type": "string",
                  "description": "Version of the snapshot.",
                  "example": "1.0"
                },
                "created_on": {
                  "type": "string",
                  "description": "Date and time of creation of snapshot.",
                  "example": "2023-06-22T21:47:28.297Z"
                },
                "report_types": {
                  "type": "array",
                  "description": "List of report types configured for the snapshot.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "description": "The type of billing report of the snapshot. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
                        "enum": [
                          "account_summary",
                          "enterprise_summary",
                          "account_resource_instance_usage"
                        ],
                        "example": "account_summary"
                      },
                      "version": {
                        "type": "string",
                        "description": "Version of the snapshot.",
                        "example": "1.0"
                      }
                    }
                  }
                },
                "files": {
                  "type": "array",
                  "description": "List of location of reports.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "report_types": {
                        "type": "string",
                        "description": "The type of billing report stored. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
                        "enum": [
                          "account_summary",
                          "enterprise_summary",
                          "account_resource_instance_usage"
                        ],
                        "example": "account_summary"
                      },
                      "location": {
                        "type": "string",
                        "description": "Absolute path of the billing report in the COS instance.",
                        "example": "june/2023-06/1685577600000/2023-06-account-summary-272b9a4f73e11030d0ba037daee47a35.csv.gz"
                      },
                      "account_id": {
                        "type": "string",
                        "description": "Account ID for which billing report is captured.",
                        "example": "abc"
                      }
                    }
                  }
                },
                "processed_at": {
                  "type": "integer",
                  "format": "int64",
                  "description": "Timestamp at which snapshot is captured.",
                  "example": 1687470448297
                }
              }
            }
          }
        }
      },
      "Snapshot_Config_Validate": {
        "description": "Request payload to verify s2s authorization.",
        "type": "object",
        "required": [
          "account_id"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "Account ID for which billing report snapshot is configured.",
            "example": "abc"
          },
          "interval": {
            "type": "string",
            "description": "Frequency of taking the snapshot of the billing reports.",
            "enum": [
              "daily"
            ],
            "example": "daily"
          },
          "cos_bucket": {
            "type": "string",
            "description": "The name of the COS bucket to store the snapshot of the billing reports.",
            "example": "bucket_name"
          },
          "cos_location": {
            "type": "string",
            "description": "Region of the COS instance.",
            "example": "us-south"
          },
          "cos_reports_folder": {
            "type": "string",
            "description": "The billing reports root folder to store the billing reports snapshots. Defaults to \"IBMCloud-Billing-Reports\"",
            "example": "IBMCloud-Billing-Reports"
          },
          "report_types": {
            "type": "array",
            "description": "The type of billing reports to take snapshot of. Possible values are [account_summary, enterprise_summary, account_resource_instance_usage].",
            "items": {
              "type": "string",
              "enum": [
                "account_summary",
                "enterprise_summary",
                "account_resource_instance_usage"
              ]
            },
            "example": [
              "account_summary",
              "enterprise_summary",
              "account_resource_instance_usage"
            ]
          },
          "versioning": {
            "type": "string",
            "description": "A new version of report is created or the existing report version is overwritten with every update. Defaults to \"new\"",
            "enum": [
              "new",
              "overwrite"
            ],
            "example": "new"
          }
        }
      },
      "Snapshot_Config_Validate_Response": {
        "description": "Validated billing service to COS bucket authorization.",
        "type": "object",
        "properties": {
          "account_id": {
            "type": "string",
            "description": "Account ID for which billing report snapshot is configured.",
            "example": "abc"
          },
          "cos_bucket": {
            "type": "string",
            "description": "The name of the COS bucket to store the snapshot of the billing reports.",
            "example": "bucket_name"
          },
          "cos_location": {
            "type": "string",
            "description": "Region of the COS instance.",
            "example": "us-south"
          }
        }
      },
      "Discount": {
        "description": "Information about a discount that is associated with a metric.",
        "type": "object",
        "required": [
          "ref",
          "discount"
        ],
        "properties": {
          "ref": {
            "type": "string",
            "description": "The reference ID of the discount.",
            "example": "Discount-d27beddb-111b-4bbf-8cb1-b770f531c1a9"
          },
          "name": {
            "type": "string",
            "description": "The name of the discount indicating category.",
            "example": "platform-discount"
          },
          "display_name": {
            "type": "string",
            "description": "The name of the discount.",
            "example": "Platform Service Discount"
          },
          "discount": {
            "type": "number",
            "description": "The discount percentage.",
            "example": 5
          }
        }
      },
      "Metric": {
        "description": "Information about a metric.",
        "type": "object",
        "required": [
          "metric",
          "quantity",
          "cost",
          "rated_cost",
          "discounts"
        ],
        "properties": {
          "metric": {
            "type": "string",
            "description": "The ID of the metric.",
            "example": "UP-TIME"
          },
          "metric_name": {
            "type": "string",
            "description": "The name of the metric.",
            "example": "UP-TIME"
          },
          "quantity": {
            "type": "number",
            "description": "The aggregated value for the metric.",
            "example": 711.11
          },
          "rateable_quantity": {
            "type": "number",
            "description": "The quantity that is used for calculating charges.",
            "example": 700
          },
          "cost": {
            "type": "number",
            "description": "The cost incurred by the metric.",
            "example": 123.45
          },
          "rated_cost": {
            "type": "number",
            "description": "Pre-discounted cost incurred by the metric.",
            "example": 130
          },
          "price": {
            "type": "array",
            "description": "The price with which the cost was calculated.",
            "items": {
              "description": "An individual price item."
            }
          },
          "unit": {
            "type": "string",
            "description": "The unit that qualifies the quantity.",
            "example": "HOURS"
          },
          "unit_name": {
            "type": "string",
            "description": "The name of the unit.",
            "example": "HOURS"
          },
          "non_chargeable": {
            "type": "boolean",
            "description": "When set to `true`, the cost is for informational purpose and is not included while calculating the plan charges.",
            "example": true
          },
          "discounts": {
            "type": "array",
            "description": "All the discounts applicable to the metric.",
            "x-item-name": "discount",
            "items": {
              "$ref": "#/components/schemas/Discount"
            }
          },
          "volume_discount": {
            "type": "number",
            "description": "This percentage reflects the reduction to the original cost that you receive under a volume based pricing structure"
          },
          "volume_cost": {
            "type": "number",
            "description": "The original cost adjusted for volume based discounts that are applied at the account level"
          }
        }
      },
      "Plan": {
        "type": "object",
        "description": "The aggregated values for the plan.",
        "required": [
          "plan_id",
          "billable",
          "cost",
          "rated_cost",
          "usage",
          "discounts"
        ],
        "properties": {
          "plan_id": {
            "type": "string",
            "description": "The ID of the plan."
          },
          "plan_name": {
            "type": "string",
            "description": "The name of the plan."
          },
          "pricing_region": {
            "type": "string",
            "description": "The pricing region for the plan."
          },
          "pricing_plan_id": {
            "type": "string",
            "description": "The ID of the pricing plan used to rate the usage."
          },
          "billable": {
            "type": "boolean",
            "description": "Indicates if the plan charges are billed to the customer."
          },
          "cost": {
            "type": "number",
            "description": "The total cost incurred by the plan."
          },
          "rated_cost": {
            "type": "number",
            "description": "Total pre-discounted cost incurred by the plan."
          },
          "subscription_id": {
            "type": "string",
            "description": "The ID of the service subscription with effective timestamp"
          },
          "usage": {
            "type": "array",
            "description": "All the metrics in the plan.",
            "x-item-name": "metric",
            "items": {
              "$ref": "#/components/schemas/Metric"
            }
          },
          "discounts": {
            "type": "array",
            "description": "All the discounts applicable to the plan.",
            "x-item-name": "discount",
            "items": {
              "$ref": "#/components/schemas/Discount"
            }
          },
          "pending": {
            "type": "boolean",
            "description": "Pending charge from classic infrastructure.",
            "example": true
          }
        }
      },
      "Resource": {
        "type": "object",
        "description": "The container for all the plans in the resource.",
        "required": [
          "resource_id",
          "billable_cost",
          "billable_rated_cost",
          "non_billable_cost",
          "non_billable_rated_cost",
          "plans",
          "discounts"
        ],
        "properties": {
          "resource_id": {
            "type": "string",
            "description": "The ID of the resource."
          },
          "catalog_id": {
            "type": "string",
            "description": "The catalog ID of the resource"
          },
          "resource_name": {
            "type": "string",
            "description": "The name of the resource."
          },
          "billable_cost": {
            "type": "number",
            "description": "The billable charges for the account."
          },
          "billable_rated_cost": {
            "type": "number",
            "description": "The pre-discounted billable charges for the account."
          },
          "non_billable_cost": {
            "type": "number",
            "description": "The non-billable charges for the account."
          },
          "non_billable_rated_cost": {
            "type": "number",
            "description": "The pre-discounted non-billable charges for the account."
          },
          "plans": {
            "type": "array",
            "description": "All the plans in the resource.",
            "x-item-name": "plan",
            "items": {
              "$ref": "#/components/schemas/Plan"
            }
          },
          "discounts": {
            "type": "array",
            "description": "All the discounts applicable to the resource.",
            "x-item-name": "discount",
            "items": {
              "$ref": "#/components/schemas/Discount"
            }
          }
        }
      },
      "Account_Usage": {
        "type": "object",
        "description": "The aggregated usage and charges for all the plans in the account.",
        "required": [
          "account_id",
          "pricing_country",
          "currency_code",
          "month",
          "resources"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "The ID of the account."
          },
          "pricing_country": {
            "type": "string",
            "description": "The target country pricing that should be used.",
            "example": "USA"
          },
          "currency_code": {
            "type": "string",
            "description": "The currency for the cost fields in the resources, plans and metrics",
            "example": "USD"
          },
          "month": {
            "type": "string",
            "description": "The month",
            "pattern": "^\\d{4}\\-(0?[1-9]|1[012])$",
            "example": "2017-08"
          },
          "resources": {
            "type": "array",
            "description": "All the resource used in the account.",
            "x-item-name": "resource",
            "items": {
              "$ref": "#/components/schemas/Resource"
            }
          },
          "currency_rate": {
            "type": "number",
            "description": "The value of the account's currency in USD.",
            "example": "10.8716"
          }
        }
      },
      "Org_Usage": {
        "type": "object",
        "description": "The aggregated usage and charges for all the plans in the org.",
        "required": [
          "account_id",
          "organization_id",
          "pricing_country",
          "currency_code",
          "month",
          "resources"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "The ID of the account."
          },
          "organization_id": {
            "type": "string",
            "description": "The ID of the organization."
          },
          "organization_name": {
            "type": "string",
            "description": "The name of the organization."
          },
          "pricing_country": {
            "type": "string",
            "description": "The target country pricing that should be used.",
            "example": "USA"
          },
          "currency_code": {
            "type": "string",
            "description": "The currency for the cost fields in the resources, plans and metrics",
            "example": "USD"
          },
          "month": {
            "type": "string",
            "description": "The month",
            "pattern": "^\\d{4}\\-(0?[1-9]|1[012])$",
            "example": "2017-08"
          },
          "resources": {
            "type": "array",
            "description": "All the resource used in the account.",
            "x-item-name": "resource",
            "items": {
              "$ref": "#/components/schemas/Resource"
            }
          },
          "currency_rate": {
            "type": "number",
            "description": "The value of the account's currency in USD.",
            "example": "10.8716"
          }
        }
      },
      "Resource_Group_Usage": {
        "type": "object",
        "description": "The aggregated usage and charges for all the plans in the resource group.",
        "required": [
          "account_id",
          "resource_group_id",
          "pricing_country",
          "currency_code",
          "month",
          "resources"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "The ID of the account."
          },
          "resource_group_id": {
            "type": "string",
            "description": "The ID of the resource group."
          },
          "resource_group_name": {
            "type": "string",
            "description": "The name of the resource group."
          },
          "pricing_country": {
            "type": "string",
            "description": "The target country pricing that should be used.",
            "example": "USA"
          },
          "currency_code": {
            "type": "string",
            "description": "The currency for the cost fields in the resources, plans and metrics",
            "example": "USD"
          },
          "month": {
            "type": "string",
            "description": "The month",
            "pattern": "^\\d{4}\\-(0?[1-9]|1[012])$",
            "example": "2017-08"
          },
          "resources": {
            "type": "array",
            "description": "All the resource used in the account",
            "x-item-name": "resource",
            "items": {
              "$ref": "#/components/schemas/Resource"
            }
          },
          "currency_rate": {
            "type": "number",
            "description": "The value of the account's currency in USD.",
            "example": "10.8716"
          }
        }
      },
      "Instance_Usage": {
        "type": "object",
        "description": "The aggregated usage and charges for an instance.",
        "required": [
          "account_id",
          "resource_id",
          "resource_instance_id",
          "plan_id",
          "billable",
          "pricing_country",
          "currency_code",
          "month",
          "usage"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "The ID of the account."
          },
          "resource_instance_id": {
            "type": "string",
            "description": "The ID of the resource instance."
          },
          "resource_instance_name": {
            "type": "string",
            "description": "The name of the resource instance."
          },
          "resource_id": {
            "type": "string",
            "description": "The ID of the resource."
          },
          "catalog_id": {
            "type": "string",
            "description": "The catalog ID of the resource"
          },
          "resource_name": {
            "type": "string",
            "description": "The name of the resource."
          },
          "resource_group_id": {
            "type": "string",
            "description": "The ID of the resource group."
          },
          "resource_group_name": {
            "type": "string",
            "description": "The name of the resource group."
          },
          "organization_id": {
            "type": "string",
            "description": "The ID of the organization."
          },
          "organization_name": {
            "type": "string",
            "description": "The name of the organization."
          },
          "space_id": {
            "type": "string",
            "description": "The ID of the space."
          },
          "space_name": {
            "type": "string",
            "description": "The name of the space."
          },
          "consumer_id": {
            "type": "string",
            "description": "The ID of the consumer."
          },
          "region": {
            "type": "string",
            "description": "The region where instance was provisioned."
          },
          "pricing_region": {
            "type": "string",
            "description": "The pricing region where the usage that was submitted was rated."
          },
          "pricing_country": {
            "type": "string",
            "description": "The target country pricing that should be used.",
            "example": "USA"
          },
          "currency_code": {
            "type": "string",
            "description": "The currency for the cost fields in the resources, plans and metrics",
            "example": "USD"
          },
          "billable": {
            "type": "boolean",
            "description": "Is the cost charged to the account",
            "example": true
          },
          "parent_resource_instance_id": {
            "type": "string",
            "description": "The resource instance id of the parent resource associated with this instance."
          },
          "plan_id": {
            "type": "string",
            "description": "The ID of the plan where the instance was provisioned and rated."
          },
          "plan_name": {
            "type": "string",
            "description": "The name of the plan where the instance was provisioned and rated."
          },
          "pricing_plan_id": {
            "type": "string",
            "description": "The ID of the pricing plan used to rate the usage."
          },
          "subscription_id": {
            "type": "string",
            "description": "The ID of the service subscription with effective timestamp."
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "timestamp in string format at which instance is created."
          },
          "deleted_at": {
            "type": "string",
            "format": "date-time",
            "description": "timestamp in string format at which instance is deleted."
          },
          "month": {
            "type": "string",
            "description": "The month",
            "pattern": "^\\d{4}\\-(0?[1-9]|1[012])$",
            "example": "2017-08"
          },
          "usage": {
            "type": "array",
            "description": "All the resource used in the account.",
            "x-item-name": "metric",
            "items": {
              "$ref": "#/components/schemas/Metric"
            }
          },
          "pending": {
            "type": "boolean",
            "description": "Pending charge from classic infrastructure.",
            "example": true
          },
          "currency_rate": {
            "type": "number",
            "description": "The value of the account's currency in USD.",
            "example": "10.8716"
          },
          "tags": {
            "type": "array",
            "description": "The user tags associated with a resource instance.",
            "items": {
              "description": "Array of user tags."
            },
            "example": [
              "env:test",
              "staging"
            ]
          },
          "service_tags": {
            "type": "array",
            "description": "The service tags associated with a resource instance.",
            "items": {
              "description": "Array of service tags."
            },
            "example": [
              "project::config_id:b48d4e76-7c72-467c-97b6-443092334ce4",
              "project::project_id:639bcd7e-f1f1-469f-bd28-1f03bcac6121"
            ]
          }
        }
      },
      "Instances_Usage": {
        "type": "object",
        "description": "The list of instance usage reports.",
        "properties": {
          "limit": {
            "type": "integer",
            "description": "The max number of reports in the response."
          },
          "count": {
            "type": "integer",
            "description": "The number of reports in the response."
          },
          "first": {
            "type": "object",
            "description": "The link to the first page of the search query.",
            "properties": {
              "href": {
                "description": "A link to a page of query results.",
                "type": "string"
              }
            }
          },
          "next": {
            "type": "object",
            "description": "The link to the next page of the search query.",
            "properties": {
              "href": {
                "description": "A link to a page of query results.",
                "type": "string"
              },
              "offset": {
                "type": "string",
                "description": "The value of the `_start` query parameter to fetch the next page."
              }
            }
          },
          "resources": {
            "type": "array",
            "description": "The list of instance usage reports.",
            "x-item-name": "resource",
            "items": {
              "$ref": "#/components/schemas/Instance_Usage"
            }
          }
        }
      },
      "FOCUS_Usage": {
        "type": "object",
        "description": "A paginated list of FOCUS-compliant usage reports.",
        "properties": {
          "limit": {
            "type": "integer",
            "description": "Maximum number of reports in the response."
          },
          "count": {
            "type": "integer",
            "description": "Number of reports in the response."
          },
          "first": {
            "type": "object",
            "description": "Link to the first page of the search query.",
            "properties": {
              "href": {
                "description": "Link to a page of query results.",
                "type": "string"
              }
            }
          },
          "next": {
            "type": "object",
            "description": "Link to the next page of the search query.",
            "properties": {
              "href": {
                "description": "Link to a page of query results.",
                "type": "string"
              },
              "offset": {
                "type": "string",
                "description": "Value of the `_start` query parameter to fetch the next page."
              }
            }
          },
          "resources": {
            "type": "array",
            "description": "List of FOCUS-compliant usage records.",
            "x-item-name": "resource",
            "items": {
              "$ref": "#/components/schemas/FOCUS_Resource"
            }
          }
        }
      },
      "FOCUS_Resource": {
        "type": "object",
        "description": "A FOCUS v1.2 compliant usage record with IBM-specific extensions.",
        "properties": {
          "AvailabilityZone": {
            "type": "string",
            "description": "Availability zone where the resource is located."
          },
          "BilledCost": {
            "type": "number",
            "description": "Cost billed to the customer after applying all discounts and credits."
          },
          "BillingAccountId": {
            "type": "string",
            "description": "Unique identifier for the billing account."
          },
          "BillingAccountName": {
            "type": "string",
            "description": "Display name of the billing account."
          },
          "BillingAccountType": {
            "type": "string",
            "description": "Type of billing account (for example, Enterprise, Subscription, PAYG)."
          },
          "BillingCurrency": {
            "type": "string",
            "description": "Currency code (ISO 4217) for billing."
          },
          "BillingPeriodEnd": {
            "type": "string",
            "format": "date-time",
            "description": "End date and time of the billing period."
          },
          "BillingPeriodStart": {
            "type": "string",
            "format": "date-time",
            "description": "Start date and time of the billing period."
          },
          "CapacityReservationId": {
            "type": "string",
            "nullable": true,
            "description": "Identifier for capacity reservation. Not currently used by IBM Cloud."
          },
          "CapacityReservationStatus": {
            "type": "string",
            "nullable": true,
            "description": "Status of capacity reservation. Not currently used by IBM Cloud."
          },
          "ChargeCategory": {
            "type": "string",
            "description": "Category of the charge (for example, Usage, Purchase, Tax, Adjustment)."
          },
          "ChargeClass": {
            "type": "string",
            "nullable": true,
            "description": "Class of the charge. Not currently used by IBM Cloud."
          },
          "ChargeDescription": {
            "type": "string",
            "description": "Human-readable description of the charge."
          },
          "ChargeFrequency": {
            "type": "string",
            "description": "Frequency of the charge (for example, Usage-Based, One-Time, Recurring)."
          },
          "ChargePeriodEnd": {
            "type": "string",
            "format": "date-time",
            "description": "End date and time of the charge period."
          },
          "ChargePeriodStart": {
            "type": "string",
            "format": "date-time",
            "description": "Start date and time of the charge period."
          },
          "CommitmentDiscountCategory": {
            "type": "string",
            "nullable": true,
            "description": "Category of commitment-based discount."
          },
          "CommitmentDiscountId": {
            "type": "string",
            "nullable": true,
            "description": "Unique identifier for the commitment discount."
          },
          "CommitmentDiscountName": {
            "type": "string",
            "nullable": true,
            "description": "Display name of the commitment discount."
          },
          "CommitmentDiscountQuantity": {
            "type": "number",
            "nullable": true,
            "description": "Quantity of commitment discount applied."
          },
          "CommitmentDiscountStatus": {
            "type": "string",
            "nullable": true,
            "description": "Status of the commitment discount."
          },
          "CommitmentDiscountType": {
            "type": "string",
            "nullable": true,
            "description": "Type of commitment discount."
          },
          "CommitmentDiscountUnit": {
            "type": "string",
            "nullable": true,
            "description": "Unit of measure for the commitment discount."
          },
          "ConsumedQuantity": {
            "type": "number",
            "description": "Quantity of the resource consumed."
          },
          "ConsumedUnit": {
            "type": "string",
            "description": "Unit of measure for consumed quantity."
          },
          "ContractedCost": {
            "type": "number",
            "description": "Cost based on contracted rates."
          },
          "ContractedUnitPrice": {
            "type": "number",
            "description": "Contracted price per unit."
          },
          "EffectiveCost": {
            "type": "number",
            "description": "Amortized cost after applying discounts and credits."
          },
          "InvoiceId": {
            "type": "string",
            "nullable": true,
            "description": "Identifier for the invoice. Not currently used by IBM Cloud."
          },
          "InvoiceIssuerName": {
            "type": "string",
            "description": "Name of the invoice issuer (typically \"IBM\")."
          },
          "ListCost": {
            "type": "number",
            "description": "Cost at list price before any discounts."
          },
          "ListUnitPrice": {
            "type": "number",
            "description": "List price per unit before discounts."
          },
          "PricingCategory": {
            "type": "string",
            "description": "Pricing model category (for example, Standard, On-Demand)."
          },
          "PricingCurrency": {
            "type": "string",
            "description": "Currency code (ISO 4217) for pricing."
          },
          "PricingCurrencyContractedUnitPrice": {
            "type": "number",
            "nullable": true,
            "description": "Contracted unit price in pricing currency. Not currently used by IBM Cloud."
          },
          "PricingCurrencyEffectiveCost": {
            "type": "number",
            "nullable": true,
            "description": "Effective cost in pricing currency. Not currently used by IBM Cloud."
          },
          "PricingCurrencyListUnitPrice": {
            "type": "number",
            "nullable": true,
            "description": "List unit price in pricing currency. Not currently used by IBM Cloud."
          },
          "PricingQuantity": {
            "type": "string",
            "description": "Quantity used for pricing calculations."
          },
          "PricingUnit": {
            "type": "string",
            "description": "Unit of measure for pricing."
          },
          "ProviderName": {
            "type": "string",
            "description": "Name of the cloud provider (typically \"IBM Cloud\")."
          },
          "PublisherName": {
            "type": "string",
            "description": "Name of the service publisher."
          },
          "RegionId": {
            "type": "string",
            "description": "Identifier for the region."
          },
          "RegionName": {
            "type": "string",
            "description": "Display name of the region."
          },
          "ResourceId": {
            "type": "string",
            "description": "Unique identifier for the resource."
          },
          "ResourceName": {
            "type": "string",
            "description": "Display name of the resource."
          },
          "ResourceType": {
            "type": "string",
            "description": "Type or category of the resource."
          },
          "ServiceCategory": {
            "type": "string",
            "description": "High-level category of the service (for example, Compute, Storage, Network)."
          },
          "ServiceName": {
            "type": "string",
            "description": "Name of the service."
          },
          "ServiceSubcategory": {
            "type": "string",
            "description": "Subcategory of the service."
          },
          "SkuId": {
            "type": "string",
            "description": "Stock Keeping Unit (SKU) identifier."
          },
          "SkuMeter": {
            "type": "string",
            "description": "Meter associated with the SKU."
          },
          "SkuPriceDetails": {
            "type": "string",
            "nullable": true,
            "description": "Detailed pricing information for the SKU. Not currently used by IBM Cloud."
          },
          "SkuPriceId": {
            "type": "string",
            "nullable": true,
            "description": "Identifier for the SKU price. Not currently used by IBM Cloud."
          },
          "SubAccountId": {
            "type": "string",
            "nullable": true,
            "description": "Identifier for sub-account. Not currently used by IBM Cloud."
          },
          "SubAccountName": {
            "type": "string",
            "nullable": true,
            "description": "Name of sub-account. Not currently used by IBM Cloud."
          },
          "SubAccountType": {
            "type": "string",
            "nullable": true,
            "description": "Type of sub-account. Not currently used by IBM Cloud."
          },
          "Tags": {
            "type": "string",
            "nullable": true,
            "description": "User-defined tags associated with the resource."
          },
          "x_DiscountId": {
            "type": "string",
            "nullable": true,
            "description": "IBM-specific discount identifier."
          },
          "x_DiscountName": {
            "type": "string",
            "nullable": true,
            "description": "IBM-specific discount name."
          },
          "x_DiscountQuantity": {
            "type": "number",
            "nullable": true,
            "description": "IBM-specific discount quantity applied."
          },
          "x_DiscountType": {
            "type": "string",
            "nullable": true,
            "description": "IBM-specific discount type."
          },
          "x_OfferId": {
            "type": "string",
            "nullable": true,
            "description": "IBM-specific offer identifier."
          },
          "x_OfferCredit": {
            "type": "number",
            "nullable": true,
            "description": "IBM-specific offer credit amount."
          }
        }
      },
      "Instances_Usage_CSV_Metadata": {
        "type": "object",
        "properties": {
          "Account Owner ID": {
            "type": "string"
          },
          "Account Name": {
            "type": "string"
          },
          "Billing Month": {
            "type": "string"
          },
          "Currency Rate": {
            "type": "number"
          },
          "Created Time": {
            "type": "string"
          }
        },
        "required": [
          "Account Owner ID",
          "Account Name",
          "Billing Month",
          "Currency Rate",
          "Created Time"
        ]
      },
      "Instances_Usage_CSV_Instance_Usage": {
        "type": "object",
        "properties": {
          "Service Name": {
            "type": "string"
          },
          "Service ID": {
            "type": "string"
          },
          "Instance Name": {
            "type": "string"
          },
          "Instance ID": {
            "type": "string"
          },
          "Plan Name": {
            "type": "string"
          },
          "Plan ID": {
            "type": "string"
          },
          "Region": {
            "type": "string"
          },
          "Consumer ID": {
            "type": "string"
          },
          "Resource Group Name": {
            "type": "string"
          },
          "Resource Group ID": {
            "type": "string"
          },
          "CF Org": {
            "type": "string"
          },
          "Org ID": {
            "type": "string"
          },
          "CF Space": {
            "type": "string"
          },
          "Space ID": {
            "type": "string"
          },
          "Currency": {
            "type": "string"
          },
          "Billable": {
            "type": "boolean"
          },
          "Usage Metric": {
            "type": "string"
          },
          "Usage Unit": {
            "type": "string"
          },
          "Usage Quantity": {
            "type": "number"
          },
          "Usage Cost": {
            "type": "number"
          },
          "Original Cost": {
            "type": "number"
          },
          "Pending": {
            "type": "boolean"
          },
          "Discount": {
            "type": "number"
          },
          "Discount ID": {
            "type": "string"
          },
          "Other Tags": {
            "type": "string"
          }
        },
        "required": [
          "Service Name",
          "Service ID",
          "Instance Name",
          "Instance ID",
          "Plan Name",
          "Plan ID",
          "Region",
          "Resource Group Name",
          "Resource Group ID",
          "Currency",
          "Billable",
          "Usage Metric",
          "Usage Unit",
          "Usage Quantity",
          "Usage Cost",
          "Original Cost",
          "Pending"
        ]
      },
      "Offer": {
        "type": "object",
        "description": "Information about an individual offer.",
        "required": [
          "credits",
          "credits_total",
          "expires_on",
          "offer_id",
          "offer_template",
          "valid_from",
          "created_by_email_id"
        ],
        "properties": {
          "offer_id": {
            "type": "string",
            "description": "The ID of the offer."
          },
          "credits_total": {
            "type": "number",
            "description": "The total credits before applying the offer."
          },
          "offer_template": {
            "type": "string",
            "description": "The template with which the offer was generated."
          },
          "valid_from": {
            "type": "string",
            "format": "date-time",
            "description": "The date from which the offer is valid."
          },
          "created_by_email_id": {
            "type": "string",
            "description": "The offer's creator's email id"
          },
          "expires_on": {
            "type": "string",
            "format": "date-time",
            "description": "The date until the offer is valid."
          },
          "credits": {
            "title": "OfferCredits",
            "type": "object",
            "description": "Credit information related to an offer.",
            "required": [
              "balance",
              "starting_balance",
              "used"
            ],
            "properties": {
              "starting_balance": {
                "type": "number",
                "description": "The available credits in the offer at the beginning of the month."
              },
              "used": {
                "type": "number",
                "description": "The credits used in this month."
              },
              "balance": {
                "type": "number",
                "description": "The remaining credits in the offer."
              }
            }
          }
        }
      },
      "SubscriptionSummary": {
        "description": "A summary of charges and credits related to a subscription.",
        "type": "object",
        "properties": {
          "overage": {
            "type": "number",
            "description": "The charges after exhausting subscription credits and offers credits."
          },
          "subscriptions": {
            "type": "array",
            "description": "The list of subscriptions applicable for the month.",
            "x-item-name": "subscription",
            "items": {
              "title": "Subscription",
              "required": [
                "charge_agreement_number",
                "credits_total",
                "start",
                "subscription_amount",
                "subscription_id",
                "terms",
                "type"
              ],
              "type": "object",
              "properties": {
                "subscription_id": {
                  "type": "string",
                  "description": "The ID of the subscription."
                },
                "charge_agreement_number": {
                  "type": "string",
                  "description": "The charge agreement number of the subsciption."
                },
                "type": {
                  "type": "string",
                  "description": "Type of the subscription"
                },
                "subscription_amount": {
                  "type": "number",
                  "description": "The credits available in the subscription for the month."
                },
                "start": {
                  "type": "string",
                  "format": "date-time",
                  "description": "The date from which the subscription was active."
                },
                "end": {
                  "type": "string",
                  "format": "date-time",
                  "description": "The date until which the subscription is active. End time is unavailable for PayGO accounts."
                },
                "credits_total": {
                  "type": "number",
                  "description": "The total credits available in the subscription."
                },
                "terms": {
                  "type": "array",
                  "description": "The terms through which the subscription is split into.",
                  "items": {
                    "title": "SubscriptionTerm",
                    "type": "object",
                    "required": [
                      "credits",
                      "end",
                      "start"
                    ],
                    "properties": {
                      "start": {
                        "type": "string",
                        "format": "date-time",
                        "description": "The start date of the term."
                      },
                      "end": {
                        "type": "string",
                        "format": "date-time",
                        "description": "The end date of the term."
                      },
                      "credits": {
                        "title": "SubscriptionTermCredits",
                        "description": "Information about credits related to a subscription.",
                        "type": "object",
                        "required": [
                          "balance",
                          "starting_balance",
                          "total",
                          "used"
                        ],
                        "properties": {
                          "total": {
                            "type": "number",
                            "description": "The total credits available for the term."
                          },
                          "starting_balance": {
                            "type": "number",
                            "description": "The unused credits in the term at the beginning of the month."
                          },
                          "used": {
                            "type": "number",
                            "description": "The credits used in this month."
                          },
                          "balance": {
                            "type": "number",
                            "description": "The remaining credits in this term."
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "Account_Summary": {
        "description": "A summary of charges and credits for an account.",
        "type": "object",
        "required": [
          "account_id",
          "billing_country_code",
          "billing_currency_code",
          "month",
          "offers",
          "resources",
          "subscription",
          "support"
        ],
        "properties": {
          "account_id": {
            "type": "string",
            "description": "The ID of the account."
          },
          "account_resources": {
            "type": "array",
            "description": "The list of account resources for the month.",
            "items": {
              "$ref": "#/components/schemas/Resource"
            }
          },
          "month": {
            "type": "string",
            "description": "The month in which usages were incurred. Represented in yyyy-mm format."
          },
          "billing_country_code": {
            "type": "string",
            "description": "Country"
          },
          "billing_currency_code": {
            "type": "string",
            "description": "The currency in which the account is billed."
          },
          "resources": {
            "title": "ResourcesSummary",
            "description": "Charges related to cloud resources.",
            "required": [
              "billable_cost",
              "non_billable_cost"
            ],
            "type": "object",
            "properties": {
              "billable_cost": {
                "type": "number",
                "description": "The billable charges for all cloud resources used in the account."
              },
              "non_billable_cost": {
                "type": "number",
                "description": "Non-billable charges for all cloud resources used in the account."
              }
            }
          },
          "offers": {
            "type": "array",
            "description": "The list of offers applicable for the account for the month.",
            "x-item-name": "offer",
            "items": {
              "$ref": "#/components/schemas/Offer"
            }
          },
          "support": {
            "description": "Support-related charges.",
            "type": "array",
            "items": {
              "title": "SupportSummary",
              "type": "object",
              "required": [
                "cost",
                "overage",
                "type"
              ],
              "properties": {
                "cost": {
                  "type": "number",
                  "description": "The monthly support cost."
                },
                "type": {
                  "type": "string",
                  "description": "The type of support."
                },
                "overage": {
                  "type": "number",
                  "description": "Additional support cost for the month."
                }
              }
            }
          },
          "support_resources": {
            "type": "array",
            "description": "The list of support resources for the month.",
            "items": {
              "title": "SupportResources"
            }
          },
          "subscription": {
            "$ref": "#/components/schemas/SubscriptionSummary"
          }
        }
      },
      "Account_Summary_CSV_Metadata": {
        "type": "object",
        "properties": {
          "Account Owner ID": {
            "type": "string"
          },
          "Account Name": {
            "type": "string"
          },
          "Billing Month": {
            "type": "string"
          },
          "Currency Rate": {
            "type": "number"
          },
          "Created Time": {
            "type": "string"
          }
        },
        "required": [
          "Account Owner ID",
          "Account Name",
          "Billing Month",
          "Currency Rate",
          "Created Time"
        ]
      },
      "Account_Summary_CSV_Usage_Summary": {
        "type": "object",
        "properties": {
          "Account ID": {
            "type": "string"
          },
          "Month": {
            "type": "string"
          },
          "Country Code": {
            "type": "string"
          },
          "Currency Code": {
            "type": "string"
          },
          "Billable Cost": {
            "type": "number"
          },
          "None Billable Cost": {
            "type": "number"
          }
        },
        "required": [
          "Account ID",
          "Month",
          "Country Code",
          "Currency Code",
          "Billable Cost",
          "None Billable Cost"
        ]
      },
      "Account_Summary_CSV_Subscriptions": {
        "type": "object",
        "properties": {
          "Subscription ID": {
            "type": "string"
          },
          "CA": {
            "type": "string"
          },
          "Type": {
            "type": "string"
          },
          "Subscription Amount": {
            "type": "number"
          },
          "Start": {
            "type": "string"
          },
          "End": {
            "type": "string"
          },
          "Credits Total": {
            "type": "string"
          },
          "Credits Starting": {
            "type": "string"
          },
          "Credits Used": {
            "type": "string"
          },
          "Credits Balance": {
            "type": "string"
          }
        }
      },
      "Account_Summary_CSV_Offers": {
        "type": "object",
        "properties": {
          "Offer ID": {
            "type": "string"
          },
          "Credits Total": {
            "type": "string"
          },
          "Offer Template": {
            "type": "string"
          },
          "Valid From": {
            "type": "string"
          },
          "Expire Date": {
            "type": "string"
          },
          "Recurring": {
            "type": "string"
          },
          "Starting Balance": {
            "type": "string"
          },
          "Used": {
            "type": "string"
          },
          "Balance": {
            "type": "string"
          }
        }
      },
      "Account_Summary_CSV_Support": {
        "type": "object",
        "properties": {
          "Support Cost": {
            "type": "number"
          },
          "Support Type": {
            "type": "string"
          },
          "Support Overage": {
            "type": "number"
          }
        },
        "required": [
          "Support Cost",
          "Support Type",
          "Support Overage"
        ]
      },
      "Account_Summary_CSV_Usage_Details": {
        "type": "object",
        "properties": {
          "Service Name": {
            "type": "string"
          },
          "Service ID": {
            "type": "string"
          },
          "Currency": {
            "type": "string"
          },
          "Billable": {
            "type": "boolean"
          },
          "Plan Name": {
            "type": "string"
          },
          "Plan ID": {
            "type": "string"
          },
          "Pricing Region": {
            "type": "string"
          },
          "Metric": {
            "type": "string"
          },
          "Unit": {
            "type": "string"
          },
          "Quantity": {
            "type": "number"
          },
          "Cost": {
            "type": "number"
          },
          "Original Cost": {
            "type": "number"
          },
          "Pending": {
            "type": "boolean"
          },
          "Discount(%)": {
            "type": "number"
          },
          "Discount ID": {
            "type": "string"
          }
        },
        "required": [
          "Service Name",
          "Service ID",
          "Currency",
          "Billable",
          "Plan Name",
          "Plan ID",
          "Metric",
          "Unit",
          "Quantity",
          "Cost",
          "Original Cost",
          "Pending"
        ]
      },
      "Error_Model": {
        "description": "An error response model.",
        "type": "object",
        "required": [
          "errors"
        ],
        "properties": {
          "errors": {
            "type": "array",
            "description": "Errors while serving the request.",
            "items": {
              "required": [
                "code"
              ],
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "Error code identifying a problem."
                },
                "message": {
                  "type": "string",
                  "description": "Message describing the error."
                },
                "more_info": {
                  "type": "object",
                  "description": "More information about the error."
                }
              }
            }
          }
        }
      }
    }
  }
}