New location of HttpApi construct
From migrating to AWS CDK V2:
Experimental constructs are provided in separate,
independently-versioned packages with names that end in alpha and an
alpha version number that corresponds to the first release of
aws-cdk-lib with which they are compatible.
Since the HttpApi construct is considered experimental, it has been moved to a separate package:
Link to construct page
Link to overview of new experimental package labelled alpha
Difference between CfnHttpApi, CfnApi and HttpApi
CfnHttpApi documentation (Not experimental)
CfnApi documentation (Not experimental)
HttpApi documentation (Experimental)
CfnHttpApi and CfnApi are L1 constructs, which means they directly convert to a single CloudFormation resource block. HttpApi is a L2 construct, which are usually more complex and can convert to one or more CloudFormation resource blocks. This CDK Developer guide page on Constructs provides more details on how L1 and L2 constructs work.
CfnHttpApi and CfnApi are both CloudFormation resource types which create HTTP APIs, but CfnHttpApi is the AWS SAM version of CfnApi. Quoting this page, AWS SAM templates are an extension of AWS CloudFormation templates, with some additional components that make them easier to work with.