Creating your WebId on the SAFE Network (Alpha-2)

  1. Achieve trust level 1 status membership here on the SAFE Network Forum (just read some posts for an hour)

  2. Claim your token to connect to Alpha-2 network here:

  3. Download this release of Peruse browser:

  4. Unzip archive file and execute Peruse

  5. Create account, or log in if you’ve already created an account:

  6. Accept Peruse’s authorisation request:

    NOTICE: Upon accepting authorisation request, there is an known error still being debugged, which you may or may not experience. If it occurs, you’ll need to restart Peruse.

  7. Navigate to safe://webidea.ter

  8. Click on Create new WebId Profile button:

  9. Fill out form and submit:

  10. Observe newly created WebId in list:

  11. Navigate to safe://pat.ter

  12. Click on person icon in upper left-hand corner of Peruse and choose your WebId:

  13. Click on id me me button in upper right-hand corder of page:

  14. Upon accepting authorisation request, observe that you may now use the form of your wall to make a post on your own wall:

  15. Using the search bar, type in holonet.thrawn, click the person icon or presss enter, to view his profile:

  16. Post a message to Grand Admiral Thrawn’s wall!

For more details on WebId and managing your identities and social networking on the SAFE Network, see this topic: POC applications for identity management and RDF data


Nice step through. Just one thing to add: I think you need to say what’s involved in achieving Level 1 status:

Achieve level 1 status membership here in the SAFE network forum (just read some posts for an hour)


Works for me.
On second attempt though: at the first attempt I get an ‘authorization’-error. For some reason safe://webidea.ter didn’t come with an Auth Permission request (I didn’t see the mentioned ‘IPC error: …’ however).
Another remark: Peruse (on Linux Mint 18.3) doesn’t have the minimize, maximize and close icons (in the top right corner of the screen).


Also happens on Debian 9


also on Ubuntu 18.04


Is this feature replacing the standard pubID creation process for domains? Or is it instead adding another level of features so that the network will have both pubID and WebID?



You can create a publicId (or publicName, which is a term I’m leaning toward to avoid confusion). This is effectively your domain. This can then point to any bit of data on the network.

The current setup via WHM has it pointing to a subdomain container for resolving websites normally.

With the POC we’ve added the ability to point your publicName / subdomain combo to a mutable data which is a web ID.

But in theory you could point your domain at any network data…

As it stands webIds and their publicNames are not compatible with the WHM due to conventions in the data structures (although making them compatible is possible, that just wasn’t a priority yet).

It is indeed another level. With the publicID/publicName setup for domains being one thing. And then creating a webId essentially leverages publicNames to give you a url to easily access the WebId / RDF data.


Intuitively it seems that if that happened WebIDs could be too easily abused if it was baked in at a low level.

This is a relief. Thank you!

p.s. @joshuef I agree that publicName is probably a better monicker to better differentiate.


A book I read a few years ago. Related very much to what safe are doing. Thought I’d share it:


I’m a big fan of Doc Searls!


When I click the create button referenced in step 8, my primary browser (firefox) launches and two files attempt to download from the following locations:

Very odd. The form referenced in step 9 appears successfully. However once I click submit a not authorized error appears and I can go no further.

Any ideas what could be going wrong on my end?


@cooedfox are you using the version of the browser linked in this thread (and not the earlier webid release). Thise two requests are for a font used in the webapps, these should be served by the latest version of the browser.

If you do have that version can you let me know your system please.

Also @cooedfox, if step 9 is saying not authorized, you may have ignored the Auth request at some point. Try restarting the browser and crating again. You should accept the Auth request when loading the webid manager


Thanks for the reply! Will try again later on.


Puruse is grabbing stuff from the clearnet? I thought that wasn’t supposed to be possible?

I also noticed in the pat.ter code requests to https sites for namespaces. That’s a bit above my head, but I thought that was strange.

Hoping that puruse ability to request clearnet stuff will be removed or at the very least require that permission on a per app basis.


Clearnet req, open in the main browser,not peruse. That’s what’s happening don’t worry safe sites in peruse cannot make Http requests.

The poc version has the fonts needed built it at the moment (due to limitations in the app build right now).

I also noticed in the pat.ter code requests to https sites for namespaces.

Can you clarify what you’re seeing here?


As I said, it’s above my head as far as the coding goes, but there are a few things like:

const ACTSTREAMS = postsRdf.namespace( ‘’ );

throughout the code. This is from 175

I assume it’s defining a convention. Does it actually make a call to that or is that essentially a “comment” that isn’t a comment to let people know the standard?