The error message ApplicationSets is nil in request suggests that the Argo CD API expects the ApplicationSet object to be nested under a specific field in the request payload. The raw Kubernetes-style manifest on its own isn’t what the Argo CD API endpoint expects.
According to the Argo CD ApplicationSet gRPC/REST definitions, when creating an ApplicationSet via the Argo CD API, you must wrap your JSON object inside a applicationSet field. The POST /api/v1/applicationsets endpoint expects a payload in the format defined by the CreateApplicationSetRequest message, which looks like this: