# My Business Units The My Business Unit endpoint provides access to Business Units associated with a specific user. The endpoint requires an access token from the [password flow](/api/authorization.md#password-flow). A Business Unit created using the My Business Unit endpoint is `Inactive` by default. Additionally, there is a restriction on updating Business Unit [status](/api/projects/business-units.md#businessunitstatus) using the My Business Unit endpoint. This ensures that a merchant can inspect a Business Unit created by a [Customer](/api/projects/customers.md), assign the appropriate Products and Prices, and activate it only when it is ready to be used. You can change this default configuration through a [Project-level setting](/api/projects/project.md#change-my-business-unit-status-on-creation). My Business Unit allows Customers with the [AddChildUnit](/api/projects/associate-roles.md#permission) Permission to create new [Business Units](/urn?urn=ctp%3Aapi%3Aendpoint%3A%2F%7BprojectKey%7D%2Fme%2Fbusiness-units%3APOST) and edit their existing ones. New Customers can also sign-up and create and manage new Business Units. The My Business Unit endpoint does not support managing the [Stores](/api/projects/stores.md) of a Business Unit, changing the [Business Unit status](/api/projects/business-units.md#businessunitstatus), or assigning new [Associates](/api/projects/business-units.md#associate). This intentional restriction provides additional security in scenarios when the client application must communicate directly with the API, for example in the case of [mobile applications](/tutorials/mobile-spa.md). If you need to update a field available only on the full Business Unit resource, do so from a trusted, server-side application. A checkout flow that uses [My Business Unit](/api/projects/me-business-units.md), [My Cart](/api/projects/me-carts.md), and [My Order](/api/projects/me-orders.md) endpoints has additional limitations. For example, the use of [external prices](/api/projects/carts.md#lineitempricemode) or [external taxes](/api/projects/carts.md#taxmode) is not supported. ## Representations #### MyBusinessUnitDraft [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitDraft). ##### CompanyDraft [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyCompanyDraft). ##### DivisionDraft [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyDivisionDraft). #### MyBusinessUnitAssociateDraft [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitAssociateDraft). ## Get My BusinessUnit ### Get My BusinessUnit by ID [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units/\{id}:GET). ### Get My BusinessUnit by Key [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units/key=\{key}:GET). ## Query My BusinessUnits [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units:GET). ## Check if My BusinessUnit exists ### Check if My BusinessUnit exists by ID [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units/\{id}:HEAD). ### Check if My BusinessUnit exists by Key [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units/key=\{key}:HEAD). ### Check if My BusinessUnit exists by Query Predicate [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units:HEAD). ## Create My BusinessUnit [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units:POST). ## Create Associate for My BusinessUnit [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/in-business-unit/key=\{businessUnitKey}/me/customers:POST). ## Update My BusinessUnit To update a Business Unit using the My Business Unit endpoint, the authenticated user must be an [Associate](/urn?urn=ctp%3Aapi%3Atype%3AAssociate) in the Business Unit with sufficient [Permissions](/api/projects/associate-roles.md#permission) to perform the update action. If a required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. ### Update My BusinessUnit by ID [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units/\{id}:POST). ### Update My BusinessUnit by Key [endpoint definition](/api/projects/me-business-units.md?urn=ctp:api:endpoint:/\{projectKey}/me/business-units/key=\{key}:POST). ## Update actions #### Add Address Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitAddAddressAction). #### Add Billing Address Identifier Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitAddBillingAddressIdAction). #### Add Shipping Address Identifier Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitAddShippingAddressIdAction). #### Change Address Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitChangeAddressAction). #### Change Associate Requires the `UpdateAssociates` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitChangeAssociateAction). #### Change Name Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitChangeNameAction). #### Change Parent Unit Requires the `UpdateParentUnit` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitChangeParentUnitAction). #### Remove Address Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitRemoveAddressAction). #### Remove Associate Requires the `UpdateAssociates` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitRemoveAssociateAction). #### Remove Billing Address Identifier Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitRemoveBillingAddressIdAction). #### Remove Shipping Address Identifier Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitRemoveShippingAddressIdAction). #### Set Address CustomField Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetAddressCustomFieldAction). #### Set Custom Type in Address Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetAddressCustomTypeAction). #### Set ContactEmail Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetContactEmailAction). #### Set CustomField Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetCustomFieldAction). #### Set Custom Type Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetCustomTypeAction). #### Set Default Billing Address ID Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetDefaultBillingAddressAction). #### Set Default Shipping Address ID Requires the `UpdateBusinessUnitDetails` [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission). If the required [Permission](/urn?urn=ctp%3Aapi%3Atype%3APermission) is missing, an [AssociateMissingPermission](/urn?urn=ctp%3Aapi%3Atype%3AAssociateMissingPermissionError) error is returned. [type definition](/api/projects/me-business-units.md?urn=ctp:api:type:MyBusinessUnitSetDefaultShippingAddressAction). ## Related pages - [Area overview page with navigation](/api.md) - [Previous page: My Customer Profile](/api/projects/me-profile.md) - [Next page: My Carts](/api/projects/me-carts.md)