Signatures

Sign Typed Data With Lookup

POST
Sign EIP712 compliant typed data after asserting all lookups are valid. Lookups can be view or pure functions on smart contracts. Responses are compared to specified values in the request.

Path parameters

projectIdUUIDRequired

Request

This endpoint expects an object.
domain
objectRequired

Components of the domain seperator. At least one field is required.

lookups
set of objectsRequired
Specify a maximum of 5 contract lookups to compare data with. All lookups must be valid to receive a signature by the 'signerAddress'.
message
map from strings to anyRequired
Data to be signed by the 'signerAddress'. The message's structure must be correctly defined in the 'types' mapping, specified by the 'primaryType'.
primaryType
stringRequired
Specifies the name of the key in 'types' that describes the shape of the 'message'.
signerAddress
stringRequired
Address of a project wallet that will be used to sign the 'message'.
types
map from strings to sets of objectsRequired

Type definitions of the domain and data you are requesting signature of. At minimum you must define the domain with key ‘EIP712Domain’ and the type of your message with key specified by ‘primaryType’. More information here.

signatureId
UUIDOptional
(Optional) ID of the request. Needs to be a valid UUID. If provided, it will be saved and returned as the signatureId of the response. If not provided, we will generate one for you and return it as the signatureId.

Response

This endpoint returns an object
message
any
The raw data requested to be signed.
signature
string
The signature of 'message' by the 'signerAddress'.
signerAddress
string
The address of the signer of the 'signature'.
signatureId
UUID
UUID of the signature request.