A couple of things I noticed when comparing your work to the documentation and the sample code.
1. You are using the GetAsynch() method, their sample is using POST
2. You are missing at least one required attribute:
Type
Sample provided for
Create Product
on
Catalog Products API - PayPal Developer[
^]
curl -v -X POST https://api.sandbox.paypal.com/v1/catalogs/products \
-H "Content-Type: application/json" \
-H "Authorization: Bearer Access-Token" \
-H "PayPal-Request-Id: PRODUCT-18062019-001" \
-d '{
"name": "Video Streaming Service",
"description": "Video streaming service",
"type": "SERVICE",
"category": "SOFTWARE",
"image_url": "https://example.com/streaming.jpg",
"home_url": "https://example.com/home"
}'