Set Profile Preference
Allows users to set their preferred profile source through cryptographic signature verification. The signature must be valid and the timestamp must be within 10 minutes of the current time.
POST
/preference
Allows users to set their preferred profile source through cryptographic signature verification. The signature must be valid and the timestamp must be within 10 minutes of the current time.
Request Body required
application/jsonkey
string
REQUIRED
Ethereum wallet address (will be normalized to lowercase)
preferredType
string
REQUIRED
Preferred profile source type
Enum:
ensdata, basement, b3-ens, thirdweb-farcaster, thirdweb-lens, global-accountsignature
string
REQUIRED
EIP-191 signature of the preference message
signer
string
REQUIRED
Address that signed the message (must match key)
timestamp
integer (int64)
REQUIRED
Unix timestamp in seconds (must be within 10 minutes of current time)
Responses
200
Preference set successfully
application/jsonsuccess
boolean
400
Bad Request - Invalid signature, timestamp, or authorization
curl -X POST 'https://profiles.b3.fun/preference' \
-H 'Content-Type: application/json' \
-d '{
"key": "string",
"preferredType": "ensdata",
"signature": "string",
"signer": "string",
"timestamp": 0
}'
const response = await fetch('https://profiles.b3.fun/preference', {
method: 'POST',
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"key": "string",
"preferredType": "ensdata",
"signature": "string",
"signer": "string",
"timestamp": 0
})
});
const data = await response.json();
console.log(data);
import requests
response = requests.post('https://profiles.b3.fun/preference', json={
"key": "string",
"preferredType": "ensdata",
"signature": "string",
"signer": "string",
"timestamp": 0
})
print(response.json())
200
Response
{
"success": true
}
POST
/preference