Skip to main content
Skip to main content
You're viewing the documentation for v1, which isn't the latest Medusa version.Latest documentation

Order Edits

Queries and Mutations listed here are used to send requests to the Admin Order Edit API Routes.

All hooks listed require user authentication.

An admin can edit an order to remove, add, or update an item's quantity. When an admin edits an order, they're stored as an OrderEdit.

Related Guide: How to edit an order.

Mutations​

useAdminCreateOrderEdit​

This hook creates an order edit.

Example​

import React from "react"
import { useAdminCreateOrderEdit } from "medusa-react"

const CreateOrderEdit = () => {
const createOrderEdit = useAdminCreateOrderEdit()

const handleCreateOrderEdit = (orderId: string) => {
createOrderEdit.mutate({
order_id: orderId,
}, {
onSuccess: ({ order_edit }) => {
console.log(order_edit.id)
}
})
}

// ...
}

export default CreateOrderEdit

Mutation Function Parameters​

AdminPostOrderEditsReqAdminPostOrderEditsReqRequired
The details of the order edit to create.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminDeleteOrderEdit​

This hook deletes an order edit. Only order edits that have the status created can be deleted.

Example​

import React from "react"
import { useAdminDeleteOrderEdit } from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const deleteOrderEdit = useAdminDeleteOrderEdit(
orderEditId
)

const handleDelete = () => {
deleteOrderEdit.mutate(void 0, {
onSuccess: ({ id, object, deleted }) => {
console.log(id)
}
})
}

// ...
}

export default OrderEdit

Hook Parameters​

idstringRequired
Order Edit's ID

Mutation Function Returned Data​

DeleteResponseDeleteResponseRequired
The response returned for a DELETE request.

useAdminDeleteOrderEditItemChange​

This hook deletes a line item change that indicates the addition, deletion, or update of a line item in the original order.

Example​

import React from "react"
import { useAdminDeleteOrderEditItemChange } from "medusa-react"

type Props = {
orderEditId: string
itemChangeId: string
}

const OrderEditItemChange = ({
orderEditId,
itemChangeId
}: Props) => {
const deleteItemChange = useAdminDeleteOrderEditItemChange(
orderEditId,
itemChangeId
)

const handleDeleteItemChange = () => {
deleteItemChange.mutate(void 0, {
onSuccess: ({ id, object, deleted }) => {
console.log(id)
}
})
}

// ...
}

export default OrderEditItemChange

Hook Parameters​

orderEditIdstringRequired
The order edit's ID.
itemChangeIdstringRequired
The line item change's ID.

Mutation Function Returned Data​

AdminOrderEditItemChangeDeleteResAdminOrderEditItemChangeDeleteResRequired
The details of deleting order edit item changes.

useAdminOrderEditUpdateLineItem​

This hook creates or updates a line item change in the order edit that indicates addition, deletion, or update of a line item into an original order. Line item changes are only reflected on the original order after the order edit is confirmed.

Example​

import React from "react"
import { useAdminOrderEditUpdateLineItem } from "medusa-react"

type Props = {
orderEditId: string
itemId: string
}

const OrderEditItemChange = ({
orderEditId,
itemId
}: Props) => {
const updateLineItem = useAdminOrderEditUpdateLineItem(
orderEditId,
itemId
)

const handleUpdateLineItem = (quantity: number) => {
updateLineItem.mutate({
quantity,
}, {
onSuccess: ({ order_edit }) => {
console.log(order_edit.items)
}
})
}

// ...
}

export default OrderEditItemChange

Hook Parameters​

orderEditIdstringRequired
The order edit's ID.
itemIdstringRequired
The line item's ID.

Mutation Function Parameters​

AdminPostOrderEditsEditLineItemsLineItemReqAdminPostOrderEditsEditLineItemsLineItemReqRequired
The details to create or update of the line item change.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminOrderEditDeleteLineItem​

This hook creates a line item change in the order edit that indicates deleting an item in the original order. The item in the original order will not be deleted until the order edit is confirmed.

Example​

import React from "react"
import { useAdminOrderEditDeleteLineItem } from "medusa-react"

type Props = {
orderEditId: string
itemId: string
}

const OrderEditLineItem = ({
orderEditId,
itemId
}: Props) => {
const removeLineItem = useAdminOrderEditDeleteLineItem(
orderEditId,
itemId
)

const handleRemoveLineItem = () => {
removeLineItem.mutate(void 0, {
onSuccess: ({ order_edit }) => {
console.log(order_edit.changes)
}
})
}

// ...
}

export default OrderEditLineItem

Hook Parameters​

orderEditIdstringRequired
The order edit's ID.
itemIdstringRequired
The line item's ID.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminUpdateOrderEdit​

This hook updates an Order Edit's details.

Example​

import React from "react"
import { useAdminUpdateOrderEdit } from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const updateOrderEdit = useAdminUpdateOrderEdit(
orderEditId,
)

const handleUpdate = (
internalNote: string
) => {
updateOrderEdit.mutate({
internal_note: internalNote
}, {
onSuccess: ({ order_edit }) => {
console.log(order_edit.internal_note)
}
})
}

// ...
}

export default OrderEdit

Hook Parameters​

idstringRequired
The order edit's ID.

Mutation Function Parameters​

AdminPostOrderEditsOrderEditReqAdminPostOrderEditsOrderEditReqRequired
The details to update of the order edit.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminOrderEditAddLineItem​

This hook creates a line item change in the order edit that indicates adding an item in the original order. The item will not be added to the original order until the order edit is confirmed.

Example​

import React from "react"
import { useAdminOrderEditAddLineItem } from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const addLineItem = useAdminOrderEditAddLineItem(
orderEditId
)

const handleAddLineItem =
(quantity: number, variantId: string) => {
addLineItem.mutate({
quantity,
variant_id: variantId,
}, {
onSuccess: ({ order_edit }) => {
console.log(order_edit.changes)
}
})
}

// ...
}

export default OrderEdit

Hook Parameters​

idstringRequired
The order edit's ID.

Mutation Function Parameters​

AdminPostOrderEditsEditLineItemsReqAdminPostOrderEditsEditLineItemsReqRequired
The details of the line item change to create.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminRequestOrderEditConfirmation​

This hook requests customer confirmation of an order edit. This would emit the event order-edit.requested which Notification Providers listen to and send a notification to the customer about the order edit.

Example​

import React from "react"
import {
useAdminRequestOrderEditConfirmation,
} from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const requestOrderConfirmation =
useAdminRequestOrderEditConfirmation(
orderEditId
)

const handleRequestConfirmation = () => {
requestOrderConfirmation.mutate(void 0, {
onSuccess: ({ order_edit }) => {
console.log(
order_edit.requested_at,
order_edit.requested_by
)
}
})
}

// ...
}

export default OrderEdit

Hook Parameters​

idstringRequired
The order edit's ID.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminCancelOrderEdit​

This hook cancels an order edit.

Example​

import React from "react"
import {
useAdminCancelOrderEdit,
} from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const cancelOrderEdit =
useAdminCancelOrderEdit(
orderEditId
)

const handleCancel = () => {
cancelOrderEdit.mutate(void 0, {
onSuccess: ({ order_edit }) => {
console.log(
order_edit.id
)
}
})
}

// ...
}

export default OrderEdit

Hook Parameters​

idstringRequired
The order edit's ID.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

useAdminConfirmOrderEdit​

This hook confirms an order edit. This will reflect the changes in the order edit on the associated order.

Example​

import React from "react"
import { useAdminConfirmOrderEdit } from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const confirmOrderEdit = useAdminConfirmOrderEdit(
orderEditId
)

const handleConfirmOrderEdit = () => {
confirmOrderEdit.mutate(void 0, {
onSuccess: ({ order_edit }) => {
console.log(
order_edit.confirmed_at,
order_edit.confirmed_by
)
}
})
}

// ...
}

export default OrderEdit

Hook Parameters​

idstringRequired
The order edit's ID.

Mutation Function Returned Data​

AdminOrderEditsResAdminOrderEditsResRequired
The order edit details.

Queries​

useAdminOrderEdit​

This hook retrieves an order edit's details.

Example​

A simple example that retrieves an order edit by its ID:

import React from "react"
import { useAdminOrderEdit } from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const {
order_edit,
isLoading,
} = useAdminOrderEdit(orderEditId)

return (
<div>
{isLoading && <span>Loading...</span>}
{order_edit && <span>{order_edit.status}</span>}
</div>
)
}

export default OrderEdit

To specify relations that should be retrieved:

import React from "react"
import { useAdminOrderEdit } from "medusa-react"

type Props = {
orderEditId: string
}

const OrderEdit = ({ orderEditId }: Props) => {
const {
order_edit,
isLoading,
} = useAdminOrderEdit(
orderEditId,
{
expand: "order"
}
)

return (
<div>
{isLoading && <span>Loading...</span>}
{order_edit && <span>{order_edit.status}</span>}
</div>
)
}

export default OrderEdit

Hook Parameters​

idstringRequired
The order edit's ID.
Configurations to apply on the retrieved order edit.

Query Returned Data​

order_editOrderEditRequired
Order edit details

useAdminOrderEdits​

This hook retrieves a list of order edits. The order edits can be filtered by fields such as q or order_id passed to the query parameter. The order edits can also be paginated.

Example​

To list order edits:

import React from "react"
import { useAdminOrderEdits } from "medusa-react"

const OrderEdits = () => {
const { order_edits, isLoading } = useAdminOrderEdits()

return (
<div>
{isLoading && <span>Loading...</span>}
{order_edits && !order_edits.length && (
<span>No Order Edits</span>
)}
{order_edits && order_edits.length > 0 && (
<ul>
{order_edits.map((orderEdit) => (
<li key={orderEdit.id}>
{orderEdit.status}
</li>
))}
</ul>
)}
</div>
)
}

export default OrderEdits

To specify relations that should be retrieved within the order edits:

import React from "react"
import { useAdminOrderEdits } from "medusa-react"

const OrderEdits = () => {
const { order_edits, isLoading } = useAdminOrderEdits({
expand: "order"
})

return (
<div>
{isLoading && <span>Loading...</span>}
{order_edits && !order_edits.length && (
<span>No Order Edits</span>
)}
{order_edits && order_edits.length > 0 && (
<ul>
{order_edits.map((orderEdit) => (
<li key={orderEdit.id}>
{orderEdit.status}
</li>
))}
</ul>
)}
</div>
)
}

export default OrderEdits

By default, only the first 50 records are retrieved. You can control pagination by specifying the limit and offset properties:

import React from "react"
import { useAdminOrderEdits } from "medusa-react"

const OrderEdits = () => {
const {
order_edits,
limit,
offset,
isLoading
} = useAdminOrderEdits({
expand: "order",
limit: 20,
offset: 0
})

return (
<div>
{isLoading && <span>Loading...</span>}
{order_edits && !order_edits.length && (
<span>No Order Edits</span>
)}
{order_edits && order_edits.length > 0 && (
<ul>
{order_edits.map((orderEdit) => (
<li key={orderEdit.id}>
{orderEdit.status}
</li>
))}
</ul>
)}
</div>
)
}

export default OrderEdits

Hook Parameters​

Filters and pagination configurations applied to retrieved order edits.

Query Returned Data​

limitnumberRequired
The maximum number of items that can be returned in the list.
offsetnumberRequired
The number of items skipped before the returned items in the list.
countnumberRequired
The total number of items available.
order_editsOrderEdit[]Required
An array of order edit details
Was this section helpful?