Empty Curl Response

I am trying to send a POST to apns to update a wallet ID card. I am getting "empty response" from the server and not sure why. Any help appreciated. I am not sure if the device ID or pushToken are expected in the POST URL, but I tried both. :)

starting curl

  • Trying 17.188.143.66:443...
  • Connected to api.development.push.apple.com (17.188.143.66) port 443 (#0)
  • ALPN, offering h2
  • ALPN, offering http/1.1
  • successfully set certificate verify locations:
  • TLSv1.3 (OUT), TLS handshake, Client hello (1):
  • TLSv1.3 (IN), TLS handshake, Server hello (2):
  • TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
  • TLSv1.3 (IN), TLS handshake, Request CERT (13):
  • TLSv1.3 (IN), TLS handshake, Certificate (11):
  • TLSv1.3 (IN), TLS handshake, CERT verify (15):
  • TLSv1.3 (IN), TLS handshake, Finished (20):
  • TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
  • TLSv1.3 (OUT), TLS handshake, Certificate (11):
  • TLSv1.3 (OUT), TLS handshake, CERT verify (15):
  • TLSv1.3 (OUT), TLS handshake, Finished (20):
  • SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
  • ALPN, server accepted to use h2
  • Server certificate:
  • subject: CN=api.development.push.apple.com; O=Apple Inc.; ST=California; C=US
  • start date: Dec 21 21:07:45 2022 GMT
  • expire date: Jan 20 21:07:44 2024 GMT
  • subjectAltName: host "api.development.push.apple.com" matched cert's "api.development.push.apple.com"
  • issuer: CN=Apple Public Server RSA CA 12 - G1; O=Apple Inc.; ST=California; C=US
  • SSL certificate verify ok.
  • Using HTTP2, server supports multi-use
  • Connection state changed (HTTP/2 confirmed)
  • Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
  • Using Stream ID: 1 (easy handle 0x1f10c75e320)

POST /3/device/<<device token>> HTTP/2 Host: api.development.push.apple.com user-agent: curl/7.73.0 accept: */* apns-topic: <<pass topic here>> content-length: 39 content-type: application/x-www-form-urlencoded

  • We are completely uploaded and fine
  • TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
  • TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
  • old SSL session ID is stale, removing
  • Connection state changed (MAX_CONCURRENT_STREAMS == 1000)!
  • TLSv1.3 (IN), TLS alert, close notify (256):
  • Empty reply from server
  • Closing connection 0
  • TLSv1.3 (OUT), TLS alert, close notify (256):

curl: (52) Empty reply from server ending curl

Empty Curl Response
 
 
Q