When creating a subaccount, the current authenticated user must have the billing.accounts.update IAM permission on the parent account, which is typically given to billing account administrators. This method will return an error if the parent account has not been provisioned for subaccounts.
HTTP request
POST https://cloudbilling.googleapis.com/v1/billingAccounts
Optional. The parent to create a billing account from. Format: - billingAccounts/{billing_account_id}, for example, billingAccounts/012345-567890-ABCDEF
Request body
The request body contains an instance of BillingAccount.
Response body
If successful, the response body contains a newly created instance of BillingAccount.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-05-14 UTC."],[[["\u003cp\u003eThis method allows the creation of billing subaccounts within the Google Cloud platform, which are further detailed in linked documentation.\u003c/p\u003e\n"],["\u003cp\u003eGoogle Cloud resellers should utilize Channel Services APIs for creating customer accounts and entitlements, instead of using this particular method.\u003c/p\u003e\n"],["\u003cp\u003eTo create a subaccount, the authenticated user must possess the \u003ccode\u003ebilling.accounts.update\u003c/code\u003e IAM permission on the parent account, often granted to billing account administrators.\u003c/p\u003e\n"],["\u003cp\u003eThe HTTP request for creating a billing subaccount uses a POST method directed to a specific URL, which requires a \u003ccode\u003eparent\u003c/code\u003e parameter that identifies the parent account in the query.\u003c/p\u003e\n"],["\u003cp\u003eThe request and response body both use the \u003ccode\u003eBillingAccount\u003c/code\u003e format.\u003c/p\u003e\n"]]],[],null,["# Method: billingAccounts.create\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nThis method creates [billing subaccounts](https://cloud.google.com/billing/docs/concepts#subaccounts).\n\nGoogle Cloud resellers should use the Channel Services APIs, [accounts.customers.create](https://cloud.google.com/channel/docs/reference/rest/v1/accounts.customers/create) and [accounts.customers.entitlements.create](https://cloud.google.com/channel/docs/reference/rest/v1/accounts.customers.entitlements/create).\n\nWhen creating a subaccount, the current authenticated user must have the `billing.accounts.update` IAM permission on the parent account, which is typically given to billing account [administrators](https://cloud.google.com/billing/docs/how-to/billing-access). This method will return an error if the parent account has not been provisioned for subaccounts.\n\n### HTTP request\n\n`POST https://cloudbilling.googleapis.com/v1/billingAccounts`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Query parameters\n\n### Request body\n\nThe request body contains an instance of [BillingAccount](/billing/docs/reference/rest/v1/billingAccounts#BillingAccount).\n\n### Response body\n\nIf successful, the response body contains a newly created instance of [BillingAccount](/billing/docs/reference/rest/v1/billingAccounts#BillingAccount).\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/cloud-platform`\n- `https://www.googleapis.com/auth/cloud-billing`\n\nFor more information, see the [Authentication Overview](https://cloud.google.com/docs/authentication/)."]]