B3 Profiles API

API Gratuita de Perfis Sociais

Confira a referência da API de perfis

Visão Geral

O serviço B3 Profiles atua como uma API de dados para resolver identidades de usuários descentralizados em todo o ecossistema EVM. Ele agrega dados de perfil de múltiplas fontes e protocolos, fornecendo aos desenvolvedores um único ponto de acesso à API para obter informações completas sobre usuários e contexto social.

Principais Funcionalidades

Agregação de Múltiplas Fontes

Combina dados do Basement, ENS, Thirdweb Social e outros provedores de identidade Web3

Integração de Identidade Social

Busca perfis sociais do ENS, Protocolo Lens e redes Farcaster

Caching Inteligente

Utiliza o armazenamento KV da Cloudflare para caching eficiente de dados com TTL configurável

Preferências do Usuário

Permite que usuários definam fontes de perfil preferenciais por meio de assinaturas criptográficas

Fontes de Dados Suportadas

  • ENS (Ethereum Name Service)
  • Protocolo Lens
  • Farcaster
  • B3.ID
  • Perfis do Basement

Pontos de Extremidade da API

Confira a referência da API para mais detalhes.

Consulta de Perfil

Recupere informações de perfil agregadas para qualquer endereço de carteira ou nome de usuário.
GET https://profiles.b3.fun/?address=0x1234567890abcdef1234567890abcdef12345678
GET https://profiles.b3.fun/?name=vitalik.eth
GET https://profiles.b3.fun/?name=sean.b3.fun

Definir Preferências de Perfil

Permite que usuários especifiquem sua fonte de perfil preferida por meio de assinaturas criptográficas.
POST /preference

Nomes de Exibição Personalizados

Habilita usuários a definirem nomes de exibição personalizados que sobrepõem todas as outras fontes.
POST /display-name

Formato de Resposta

O serviço retorna um objeto de perfil unificado que combina dados de todas as fontes:
{
  "name": "vitalik.eth",
  "address": "0x1234567890abcdef1234567890abcdef12345678",
  "avatar": "https://example.com/avatar.jpg",
  "bio": "Co-fundador do Ethereum",
  "displayName": "Vitalik Buterin",
  "profiles": [
    {
      "type": "ensdata",
      "address": "0x123...",
      "name": "vitalik.eth",
      "avatar": "https://...",
      "bio": null,
      "displayName": null
    },
    {
      "type": "thirdweb-farcaster",
      "address": "0x123...",
      "name": "vitalik",
      "avatar": "https://...",
      "bio": "Co-fundador do Ethereum",
      "displayName": "Vitalik Buterin"
    }
  ]
}

Casos de Uso

Autenticação de Carteira Aprimorada

Fornece um contexto rico sobre os usuários durante a conexão da carteira, mostrando sua identidade social e reputação Web3 em plataformas.

Integração com Jogos Sociais

Exibe perfis de jogadores abrangentes em jogos, incluindo nomes ENS, identificadores sociais e identidades entre plataformas.

Experiência de Usuário em DeFi

Melhora interfaces de negociação ao mostrar identidades de comerciantes do Lens, Farcaster e ENS em vez de apenas endereços de carteira.

Gestão de Comunidade

Constrói melhores ferramentas de comunidade agregando identidades de usuários de múltiplas plataformas sociais Web3.

Exemplo de Uso

Consulta Básica de Perfil

// Busca perfil por endereço
const response = await fetch('https://profiles.b3.fun/?address=0x123...');
const profile = await response.json();

console.log(profile.displayName); // "Vitalik Buterin"
console.log(profile.profiles.length); // Número de fontes encontradas

Resolução de Nome ENS

// Busca perfil por nome ENS
const response = await fetch('https://profiles.b3.fun/?name=vitalik.eth');
const profile = await response.json();

console.log(profile.address); // Endereço de carteira resolvido
console.log(profile.avatar); // URL do avatar ENS

Definindo Preferências do Usuário

// Define a fonte de perfil preferida com assinatura
const message = `SetProfilePreference:${address}:thirdweb-farcaster:${timestamp}`;
const signature = await wallet.signMessage(message);

await fetch('https://profiles.b3.fun/preference', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    key: address,
    preferredType: 'thirdweb-farcaster',
    signature,
    signer: address,
    timestamp
  })
});

Desempenho & Caching

  • Duração do Cache: 1 hora para dados de perfil
  • Dados Atualizados: Use ?fresh=true para ignorar o cache
  • CDN Global: Alimentado pela rede de borda da Cloudflare
  • Armazenamento KV: Armazenamento eficiente de chave-valor para preferências

Limites de Taxa

O serviço herda a proteção integrada contra DDoS e limitação de taxa da Cloudflare. Para aplicações de alto volume, considere implementar caching do lado do cliente ou contate a equipe B3 para acesso empresarial.

Construindo onchain de forma fácil

Confira a referência da API para mais detalhes.