Authentication
Body
methodstring Β· enumRequiredExample:
Authentication method
eip712Possible values: addressstringRequiredExample:
User wallet address
0x1234567890123456789012345678901234567890Pattern: ^0x[a-fA-F0-9]{40}$clientIdstringRequiredExample:
Client identifier
phantom-exchangedetailsone ofRequired
Authentication method specific details
or
Responses
200
Authentication successful
application/json
accessTokenstringRequiredExample:
JWT access token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...refreshTokenstringRequiredExample:
Refresh token for obtaining new access tokens
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...tokenTypestringRequiredExample:
Token type
BearerexpiresInnumberRequiredExample:
Token expiration time in seconds
900addressstringRequiredExample:
User wallet address
0x1234567890123456789012345678901234567890clientIdstringRequiredExample:
Client identifier
phantom-exchange400
Bad request - invalid input data
401
Unauthorized - authentication failed
post
/auth/loginQuery parameters
addressstringRequiredExample:
User wallet address
0x1234567890123456789012345678901234567890clientIdstringRequiredExample:
Client identifier
phantom-exchangeResponses
200
EIP712 message generated successfully
application/json
domainobjectRequiredExample:
EIP712 domain
{"name":"Pear Protocol","version":"1","chainId":1,"verifyingContract":"0x0000000000000000000000000000000000000000"}typesobjectRequiredExample:
EIP712 types
{"Authentication":[{"name":"address","type":"address"},{"name":"clientId","type":"string"},{"name":"timestamp","type":"uint256"},{"name":"action","type":"string"}]}primaryTypestringRequiredExample:
Primary type for EIP712 signing
AuthenticationmessageobjectRequiredExample:
Message to sign
{"address":"0x1234567890123456789012345678901234567890","clientId":"phantom-exchange","timestamp":1703872800,"action":"authenticate"}timestampnumberRequiredExample:
Unix timestamp used in message
1703872800400
Bad request - invalid parameters
get
/auth/eip712-messageBody
refreshTokenstringRequiredExample:
Refresh token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...Responses
200
Token refresh successful
application/json
accessTokenstringRequiredExample:
New JWT access token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...refreshTokenstringRequiredExample:
New refresh token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...tokenTypestringRequiredExample:
Token type
BearerexpiresInnumberRequiredExample:
Token expiration time in seconds
900401
Unauthorized - invalid or expired refresh token
post
/auth/refreshLast updated