Get Stock Data by stock id Multi Source Inventory(MSI) Magento 2.

Get Stock Data by given stock id for Multi-Source Inventory Magento 2.

Interface Magento\InventoryApi\Api\StockRepositoryInterface used to get stock repository information related data.

get(int $stockId) method used to fetch Stock data by stock id in MSI module Magento 2.3 and Higher version.

Pass Stock Id as Integer to fetch Stock Information.

namespace Jesadiya\StockRepository\Model;

use Exception;
use Psr\Log\LoggerInterface;
use Magento\InventoryApi\Api\StockRepositoryInterface;

class Stock
     * @var StockRepositoryInterface
    private $stockRepository;

     * @var LoggerInterface
    private $logger;

    public function __construct(
        StockRepositoryInterface $stockRepository,
        LoggerInterface $logger
    ) {
        $this->stockRepository = $stockRepository;
        $this->logger = $logger;

     * @return StockInterface|null
    public function getStockData()
        $stockData = null;
        try {
            $stockId = 1; // For Default Stock
            $stockData = $this->stockRepository->get($stockId);
        } catch (Exception $exception) {

        return $stockData;

Call function to fetch Stock Data,
$stockData = $this->getStockData();


echo $stockData->getName();
echo $stockData->getStockId();

You got the Stock name and Extension attribute related to MSI stocks.