How to Get Cart price rules data by id Magento 2?

You can get Sales rule (Cart Price rules) data by id in Magento 2 to fetch all the Cart rules related information.

You required Sales Rule id to retrieve the data of sales rule.

Just refer the below code snippet,

<?php
namespace Jesadiya\SalesRule\Model;

use Exception;
use Psr\Log\LoggerInterface;
use Magento\SalesRule\Api\Data\RuleInterface;
use Magento\SalesRule\Api\RuleRepositoryInterface;

class SalesRuleById
{
    /**
     * @var LoggerInterface
     */
    private $logger;

    /**
     * @var RuleRepositoryInterface
     */
    protected $ruleRepository;

    public function __construct(
        LoggerInterface $logger,
        RuleRepositoryInterface $ruleRepository
    ) {
        $this->logger = $logger;
        $this->ruleRepository = $ruleRepository;
    }

    /**
     * @return RuleInterface|null
     */
    public function getRuledata($ruleId): ?RuleInterface
    {
        $salesRule = null;
        try {
            $salesRule = $this->ruleRepository->getById($ruleId);
        } catch (Exception $exception) {
            $this->logger->error($exception->getMessage());
        }
        return $salesRule;
    }
}

You can get the data of sales rule by id,
$ruleId = 1;
$salesRuledata = $this->getRuledata($ruleId);

echo $salesRuledata->getName();