IStockLocationService
Methods
create
**create**(input, context?): Promise<[StockLocationDTO](/references/services/types/StockLocationDTO)>
This method is used to create a stock location.
Example
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function createStockLocation (name: string) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocation = await stockLocationModule.create({
name
})
// do something with the stock location or return it
}
Parameters
context
SharedContextReturns
Promise<StockLocationDTO>
delete
**delete**(id, context?): Promise<void>
This method is used to delete a stock location.
Example
Parameters
id
stringRequiredcontext
SharedContextReturns
Promise<void>
Promise
Promise<void>Requiredlist
**list**(selector, config?, context?): Promise<[StockLocationDTO](/references/services/types/StockLocationDTO)[]>
This method is used to retrieve a paginated list of stock locations based on optional filters and configuration.
Example
To retrieve a list of stock locations using their IDs:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function listStockLocations (ids: string[]) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocations = await stockLocationModule.list({
id: ids
})
// do something with the stock locations or return them
}
To specify relations that should be retrieved within the stock locations:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function listStockLocations (ids: string[]) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocations = await stockLocationModule.list({
id: ids
}, {
relations: ["address"]
})
// do something with the stock locations or return them
}
By default, only the first 10
records are retrieved. You can control pagination by specifying the skip
and take
properties of the config
parameter:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function listStockLocations (ids: string[], skip: number, take: number) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocations = await stockLocationModule.list({
id: ids
}, {
relations: ["address"],
skip,
take
})
// do something with the stock locations or return them
}
Parameters
config
FindConfig<StockLocationDTO>select
or relations
, accept the attributes or relations associated with a stock location.context
SharedContextReturns
Promise<StockLocationDTO[]>
listAndCount
**listAndCount**(selector, config?, context?): Promise<[[StockLocationDTO](/references/services/types/StockLocationDTO)[], number]>
This method is used to retrieve a paginated list of stock locations along with the total count of available stock locations satisfying the provided filters.
Example
To retrieve a list of stock locations using their IDs:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function listStockLocations (ids: string[]) {
const stockLocationModule = await initializeStockLocationModule({})
const [stockLocations, count] = await stockLocationModule.listAndCount({
id: ids
})
// do something with the stock locations or return them
}
To specify relations that should be retrieved within the stock locations:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function listStockLocations (ids: string[]) {
const stockLocationModule = await initializeStockLocationModule({})
const [stockLocations, count] = await stockLocationModule.listAndCount({
id: ids
}, {
relations: ["address"]
})
// do something with the stock locations or return them
}
By default, only the first 10
records are retrieved. You can control pagination by specifying the skip
and take
properties of the config
parameter:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function listStockLocations (ids: string[], skip: number, take: number) {
const stockLocationModule = await initializeStockLocationModule({})
const [stockLocations, count] = await stockLocationModule.listAndCount({
id: ids
}, {
relations: ["address"],
skip,
take
})
// do something with the stock locations or return them
}
Parameters
config
FindConfig<StockLocationDTO>select
or relations
, accept the attributes or relations associated with a stock location.context
SharedContextReturns
Promise<[StockLocationDTO[], number]>
retrieve
**retrieve**(id, config?, context?): Promise<[StockLocationDTO](/references/services/types/StockLocationDTO)>
This method is used to retrieve a stock location by its ID
Example
A simple example that retrieves a inventory item by its ID:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function retrieveStockLocation (id: string) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocation = await stockLocationModule.retrieve(id)
// do something with the stock location or return it
}
To specify relations that should be retrieved:
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function retrieveStockLocation (id: string) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocation = await stockLocationModule.retrieve(id, {
relations: ["address"]
})
// do something with the stock location or return it
}
Parameters
id
stringRequiredconfig
FindConfig<StockLocationDTO>select
or relations
, accept the attributes or relations associated with a stock location.context
SharedContextReturns
Promise<StockLocationDTO>
update
**update**(id, input, context?): Promise<[StockLocationDTO](/references/services/types/StockLocationDTO)>
This method is used to update a stock location.
Example
import {
initialize as initializeStockLocationModule,
} from "@medusajs/stock-location"
async function updateStockLocation (id:string, name: string) {
const stockLocationModule = await initializeStockLocationModule({})
const stockLocation = await stockLocationModule.update(id, {
name
})
// do something with the stock location or return it
}
Parameters
id
stringRequiredcontext
SharedContextReturns
Promise<StockLocationDTO>