Get Shared Catalog data by id programmatically Magento 2.

Shared Catalog is the native functionality of B2B Magento Commerce. Magento gives you the ability to maintain shared catalogs with the custom pricing structure for different companies. A Public Default(General) Catalog will be available native with Magento B2B.

You can get Shared Catalog data by shared catalog id using programmatically.
Magento\SharedCatalog\Api\SharedCatalogRepositoryInterface Interface used to get,delete and save  Shared catalog data related stuff. Get Shared Catalog data by Customer group id Magento 2.

<?php
    public function __construct(
        \Magento\SharedCatalog\Api\SharedCatalogRepositoryInterface $sharedCatalogRepository
    ) {
        $this->sharedCatalogRepository = $sharedCatalogRepository;
    }

    public function getSharedCatalog()
    {
        $sharedCatalogId = 1;
        $sharedCatalog = $this->sharedCatalogRepository->get($sharedCatalogId);
        return $sharedCatalog;
    }

Call function like,

$sharedCatalog = $this->getSharedCatalog();
echo “<pre>”;print_r($sharedCatalog->debug());exit;

You can get the result of shared catalog data by id as below,

Array
(
    [entity_id] => 1
    [name] => Default (General)
    [description] => Default shared catalog
    [customer_group_id] => 1
    [type] => 1
    [created_at] => 2019-03-05 114:25:20
    [created_by] => 1
    [store_id] => 0
    [customer_group_code] => Default (General)
    [tax_class_id] => 3
)

Result will give the info about shared catalog details like name, assigned customer group id, type is 1 for public catalog and 0 for custom catalog.