---
"@context": https://schema.org
"@type": TechArticle
"@id": https://www.twilio.com/docs/api/errors/60385#article
headline: "60385: Public key invalid or not provided"
url: https://www.twilio.com/docs/api/errors/60385
inLanguage: en
dateModified: 2026-06-08T12:04:59.000Z
author:
  "@type": Organization
  name: Twilio Developer Education Team
publisher:
  "@type": Organization
  name: Twilio
---

# 60385: Public key invalid or not provided

Log Type: APPLICATION

Log Level: ERROR

## Description

This error occurs when you create a Verify Push factor and the request does not include `binding.publicKey`, or the value is not a valid ECDSA public key in PKIX ASN.1 DER format encoded in Base64. Verify Push factors use public-key cryptography and store the public key generated by the registered device.

### Possible causes

* The request uses `factorType` `push` but does not include `binding.publicKey`.
* The `binding.publicKey` value is present, but it is not an ECDSA public key in PKIX ASN.1 DER format encoded in Base64.
* The factor creation request does not include the public key generated during the device registration flow for Verify Push.

### Possible solutions

* Include `binding.publicKey` in the create Factor request whenever `factorType` is `push`.
* Send the public key in the required format: an ECDSA public key in PKIX ASN.1 DER format encoded in Base64.
* If you use a Verify Push SDK, register the user and device again and create the factor from the SDK registration flow so the request includes the correct device-generated public key.

#### Additional resources

* [Factor Resource](/docs/verify/api/factor)
* [Verify Push & Silent Device Approval Overview](/docs/verify/push)
* [Verify Push Client Library Technical Overview](/docs/verify/push/technical-overview)
