title: Do I need APNs certificates if I'm using APNs Auth Key?
body: <p>I'm writing an cross-platform app with Flutter and Firebase.  I've been working on sending notifications, and it works perfectly on android.  I send messages via the firebase admin functions sdk with no problems.  The request looks like this:</p>
  <pre><code>const payload = {
    notification: {
      title: title,
      body: body,
    },
  }
  
  return admin.messaging().sendToDevice(tokens, payload, {
      mutableContent: true,
      contentAvailable: true,
      apnsPushType: &quot;background&quot;,
  })
  </code></pre>
  <p>But when I try to send messages to iOS devices, I get the following error from the shell:</p>
  <pre><code>&quot;error&quot;: {
      &quot;errorInfo&quot;: {
          &quot;code&quot;: &quot;messaging/third-party-auth-error&quot;,
          &quot;message&quot;: &quot;A message targeted to an iOS device could not be sent
                     the required APNs SSL certificate was not uploaded or
                     has expired. Check the validity of your development and
                     production certificates.&quot;
      },
      &quot;codePrefix&quot;: &quot;messaging&quot;
  }
  </code></pre>
  <p>I was under the impression that since I'm using a APNs key generated in the apple developer console, that I would not need any sort of SSL certificate.  My key is uploaded to the Firebase console and iOS devices are successfully reporting their device tokens, so I'm not sure why I can't get a message through.</p>
  <p>I've tried sending messages from the CLI and also from the FCM console online.  Both have failed.
  I've also enabled Push Notifications and Background Modes with background fetch and remote notifications.</p>
  <p>Any help or suggestions would be appreciated.</p>