public CreateDevEndpointRequest withPublicKeys(String... publicKeys) {
        if (this.publicKeys == null) {
            setPublicKeys(new java.util.ArrayList<String>(publicKeys.length));
        }
        for (String ele : publicKeys) {
            this.publicKeys.add(ele);
        }
        return this;
    }
public CreateDevEndpointRequest withPublicKeys ( String ... publicKeys ) { if ( this . publicKeys == null ) { setPublicKeys ( new java . util . ArrayList < String > ( publicKeys . length ) ) ; } for ( String ele : publicKeys ) { this . publicKeys . add ( ele ) ; } return this ; }
<p>
A list of public keys to be used by the DevEndpoints for authentication. The use of this attribute is preferred
over a single public key because the public keys allow you to have a different private key per client.
</p>
<note>
<p>
If you previously created an endpoint with a public key, you must remove that key to be able to set a list of
public keys: call the <code>UpdateDevEndpoint</code> API with the public key content in the
<code>deletePublicKeys</code> attribute, and the list of new keys in the <code>addPublicKeys</code> attribute.
</p>
</note>
<p>
<b>NOTE:</b> This method appends the values to the existing list (if any). Use
{@link #setPublicKeys(java.util.Collection)} or {@link #withPublicKeys(java.util.Collection)} if you want to
override the existing values.
</p>

@param publicKeys
A list of public keys to be used by the DevEndpoints for authentication. The use of this attribute is
preferred over a single public key because the public keys allow you to have a different private key per
client.</p> <note>
<p>
If you previously created an endpoint with a public key, you must remove that key to be able to set a list
of public keys: call the <code>UpdateDevEndpoint</code> API with the public key content in the
<code>deletePublicKeys</code> attribute, and the list of new keys in the <code>addPublicKeys</code>
attribute.
</p>
@return Returns a reference to this object so that method calls can be chained together.