Menu

Use your own domain as a W social handle

June 24, 2026
Mein Profil bei W social

Alongside 8PM and Wedium, W social popped up over the last few days as yet another new European social network. Essentially just a Bluesky clone – which isn’t necessarily a bad thing, see Eurosky or LeafPlaza – but with its own authentication and partially closed source.

Since artificial scarcity still gets me and I wanted to grab @ollie, I signed up there too. What came with the rollout was pure disappointment.

While 8PM and Wedium at least try their own approaches (even if the concept isn’t new), W social really is just a clone. The frontend, the app, everything screams Bluesky. Just slightly rebranded, and some features are missing from the web frontend, such as setting your own URL as a handle.

When I noticed another W social user with their own URL as a handle, I got curious, since the feature just isn’t available in the frontend. So the digging began.

The AT Protocol is open source and the API well documented. In the case of using your own URL as a handle, it turned out to be quite straightforward after a bit of research.

1. Find your DID

The easiest way is in your browser on wsocial.eu. Click on your profile from the home page, for example. When you do, you’ll see a 200 response in the browser’s developer tools under Network, like this:

https://pds.wsocial.network/xrpc/app.bsky.feed.getAuthorFeed?actor=did:plc:YOUR_DID_HERE&filter=posts_and_author_threads&includePins=true&limit=30

The unique value between …:plc: and &filter=… is what you’re looking for.

2. Set DNS TXT record

Same step as with Bluesky. A DNS record needs to be set for the domain you want to use as your handle.

  • Host: _atproto.yourdomain.tld
  • Type: TXT
  • Value: did=did:plc:your-did-here

Wait for propagation and optionally verify: dig TXT _atproto.yourdomain.tld

3. Create a session

curl -s -X POST "https://pds.wsocial.network/xrpc/com.atproto.server.createSession" -H "Content-Type: application/json" -d '{"identifier":"YOURNAME.wsocial.eu","password":"YOUR_PASSWORD"}'

Copy the accessJwt field from the response.

4. Update the handle

curl -s -X POST "https://pds.wsocial.network/xrpc/com.atproto.identity.updateHandle" -H "Authorization: Bearer YOUR_ACCESSJWT" -H "Content-Type: application/json" -d '{"handle":"yourdomain.tld"}'

Empty 200 response = done. Your handle is now @yourdomain.tld.

If that sounds too complicated, head over to bsky.app, choose an alternative hosting provider during login, enter https://pds.wsocial.network there, and then use your regular W social login credentials. Through this frontend, you can then set up a domain as your handle again in the options. The DNS entry step remains, though.

If you’re wondering how to populate your profile: atproto-pds-mirror mirrors an existing AT Proto profile (e.g. from Eurosky) to another PDS.

This post is part of my Tutorials page.

Enjoyed this post? Let me know in the comments, and if you're wondering why I'm no longer asking for a coffee here, there's a good reason for that.  
Olli
Written By

Hi, I'm Olli, I've been living in Hamburg since 2008 and have been working in the media industry there ever since. Before that, I spent many years spinning records in the Northern German club scene while also writing for music-related magazines. Now, after a break of several years, I'm blogging again and writing from the heart, which I think is pretty awesome.

Leave a Reply

Leave a Reply

Your email address will not be published. Required fields are marked *