私自身、そこまでShopifyのAPIに詳しくないのですが、
ご質問者様の質問内容に興味があり、調査してみました。
1.カートに入れるボタンを押すと、サイズとカラーや詳細情報が入った商品がShopifyに新規登録される(商品登録系のAPI)> > 2.その商品をカートに自動で入れる処理(カート系のAPI)
私が試した限りでは1は可能です。
しかし、JavaScriptだけで実現するのはお勧め致しません。
商品登録はAdmin APIに属し、APIコールには、トークンが必要になります。
Admin APIはストアの顧客情報や商品情報を閲覧・操作するためのAPIです。
トークンは、Admin APIをコールするためのパスワードのようなものですので、
このトークンをJavaScriptで扱えるようにすると、
必然、サイト訪問者であれば、誰でもトークンを知りえてしまいます。
(簡単には見つけられないとは思いますが、知ろうと思えば知ることができてしまいます。)
もちろん、このトークンで操作できる範囲(スコープと言います)を指定することはできますが、
少なくとも、商品登録は誰でもできるようになってしまいますので、
JavaScriptだけで実現しようとするとセキュリティ的に問題かと思います。
ですので、
サイト上での操作内容(ご質問のケースでは、商品の色やデザインになりますね)を、まずご質問者様側のサーバに送り、サーバ側のアプリケーション(PHPやJavaやNode.jsなど)からAPIコールをすることで、トークンを隠すことができます。
しかし、2については、Shopify外部からカート投入をすることができるか確証が持てませんでした。
ですので、埋め込み購入ボタンをJavaScriptで操作する方法を代わりにご提案します。
(埋め込み購入ボタンがどこまでJavaScriptで操作できる確認していないため、不足があるかもしれません。)
下記のような流れになるかと思います。
ユーザーがサイト上で商品の色やデザインを選択し、「登録」ボタンのようなものをクリック
↓
ブラウザ上から質問者様側のサーバにAPIコールされる(これはリクエストAと呼ぶことにします。)
↓
サーバからShopifyのAdmin APIをコールする
↓
Admin APIは商品登録完了のレスポンスとして商品IDを返却してくれますので、ブラウザからのリクエストAのレスポンスとして、商品IDを返す
↓
ブラウザは、商品IDを受け取ったら、埋め込み購入ボタンをJavaScriptで操作し、ユーザーにチェックアウトフローに進むよう案内する
具体的にどうやって商品を作るかというと、下記のサイトに実例が示されていますので、こちらをご覧いただくのが良いかと思います。
私の手元でも試しましたが、問題なく商品登録できました。
https://zenn.dev/unreact/articles/api-examples-products
埋め込み購入ボタンについてはShopify公式のドキュメントがあります。
https://help.shopify.com/ja/manual/online-sales-channels/buy-button
なお、Shopify外部からカート投入をする件ですが、
こちらの英語版のShopify Communityに投稿された質問を追っていきますと、
https://community.shopify.com/post/1138052
最終的に、
https://shopify.dev/api/ajax
このページに辿り着くのですが、Shopify外部からのコールが可能か怪しい内容でした。
なお、最後になりますが、
Shopify Partnerに登録すれば、開発用のShopifyストアであれば自由に(無料で)構築することができます。
Shopify Partnerに登録すること自体、無料で簡単にできますので、お時間許すようであれば、登録されるとより調査しやすいかもしれません。
https://www.shopify.com/jp/partners
(キュー田辺)