# createSignature

### Description

Creates and optionally executes cryptographic signatures for blockchain messages and structured data.

**Supported signature types:**

* **Message signing**:\ Plain text message signing using personal\_sign method
* **EIP-712**:\ Ethereum typed structured data signing for improved security and usability

{% code overflow="wrap" %}

```javascript
public createSignature(reqParams: VyCreateSignatureRequest, signingMethod: VyUserAuth) : VyPromise<VyCreateSignatureBase>
```

{% endcode %}

{% tabs %}
{% tab title="Details" %}
**Parameters**

| reqParams     | [VyCreateSignatureRequest](https://sdk.venly.io/sdk-reference/ts-js-v3/object-references/wallet/vycreatesignaturerequest) | Request data for the operation                                             |
| ------------- | ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| signingMethod | VyUserAuth                                                                                                                | This operation requires a valid Signing-Method from the corresponding user |

**Returns**

VyPromise<[VyCreateSignatureBase](https://sdk.venly.io/sdk-reference/ts-js-v3/object-references/wallet/vycreatesignaturebase)>\
Signature created and signed successfully.
{% endtab %}
{% endtabs %}
