# createInventoryAdjustmentReason (https://developer.godaddy.com/en/docs/references/rest/catalog/inventory/mutations/createInventoryAdjustmentReason)

***

title: createInventoryAdjustmentReason
description: "Create a new store-scoped inventory adjustment reason. Name must be kebab-case and must not start with "g-" (reserved for global presets). Once created, the…"
full: true
----------

mutation

Requires `commerce.product:write`.

Create a new store-scoped inventory adjustment reason. Name must be kebab-case and must not start with "g-" (reserved for global presets). Once created, the name is immutable.

## Required headers

| Header       | Required | Description                                                                                                                     |
| ------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `x-store-id` | Yes      | ID of the store the operation targets. Omitting it returns HTTP 200 with a GraphQL error: `extensions.code: "UNAUTHENTICATED"`. |

Go to [Authentication](https://developer.godaddy.com/docs/api-users/auth) for credential setup.

## Arguments

* `input` `MutationCreateInventoryAdjustmentReasonInput!` **required**
  * `label` `String!` **required**
  * `name` `String!` **required**

## Possible returns

* `InventoryAdjustmentReason` `InventoryAdjustmentReason` — A reason that can be associated with an inventory adjustment to explain why it occurred. Global preset reasons are prefixed with "g-" (e.g. g-damage, g-shrinkage). Store-scoped reasons use plain kebab-case names.

- `createdAt` `DateTime` **nullable** — The date the reason was created.
- `id` `ID` **nullable** — The globally-unique ID of the inventory adjustment reason.
- `isGlobal` `Boolean` **nullable** — Whether this is a global preset reason. Global reasons are shared across all stores and cannot be modified or archived.
- `label` `String` **nullable** — The human-readable display label of the reason.
- `name` `String` **nullable** — The unique kebab-case name of the reason. Global preset names are prefixed with "g-" (e.g. g-damage). Store-scoped names must not use the "g-" prefix.
- `status` `String` **nullable** — The status of the reason, one of ACTIVE, ARCHIVED.
- `updatedAt` `DateTime` **nullable** — The date the reason was last updated.
