POST
/
wallet
/
project
/
{projectId}
/
signTypedDataWithLookup
curl --request POST \
  --url https://api.syndicate.io/wallet/project/{projectId}/signTypedDataWithLookup \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "signatureId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "signerAddress": "<string>",
  "message": {},
  "domain": {
    "name": "<string>",
    "version": "<string>",
    "chainId": 123,
    "verifyingContract": "<string>",
    "salt": "<string>"
  },
  "types": {},
  "primaryType": "<string>",
  "lookups": [
    {
      "value": "<string>",
      "operation": "eq",
      "type": "contract",
      "contractAddress": "<string>",
      "functionSignature": "<string>",
      "args": {},
      "chainId": 123
    }
  ]
}'
{
  "message": "<any>",
  "signature": "<string>",
  "signerAddress": "<string>",
  "signatureId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}

API Endpoint

https://api.syndicate.io/wallet/project/{projectId}/signTypedDataWithLookup

Authorizations

Authorization
string
headerrequired

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

projectId
string
required

Body

application/json
signatureId
string | null

(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.

signerAddress
string
required

Address of a project wallet that will be used to sign the 'message'.

message
object
required

Data to be signed by the 'signerAddress'. The message's structure must be correctly defined in the 'types' mapping, specified by the 'primaryType'.

domain
object
required

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

types
object
required

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.

primaryType
string
required

Specifies the name of the key in 'types' that describes the shape of the 'message'.

lookups
object[]
required

Specify a maximum of 5 contract lookups to compare data with. All lookups must be valid to receive a signature by the 'signerAddress'.

Response

200 - application/json
message
any
required

The raw data requested to be signed.

signature
string
required

The signature of 'message' by the 'signerAddress'.

signerAddress
string
required

The address of the signer of the 'signature'.

signatureId
string
required

UUID of the signature request.