Social
This document will help you understand and use the social features of the novem platform
AI assisted, human approved — novem uses AI to review and keep our documentation up to date.
Novem offers a basic set of social features to help you connect with and stay up to date on other novem users.
The primary purpose of the social features is to populate the feed, the primary discoverability feature
of the novem platform.
You primarily manage the social features under the /admin/social endpoints with feed entries showing up under
the top level /feed endpoint.
Below is an overview of the API endpoints associated with the social features.
├── admin
│ ├── invites
│ │ └── @eve
│ │ └── accept
│ └── social
│ ├── connections
│ │ ├── alice
│ │ └── bob
│ ├── followers
│ │ └── charlie
│ ├── following
│ │ ├── charlie
│ │ └── mike
│ └── ignore
│ └── dave
└── feed
├── @charlie~plot~daily_weather
├── @charlie~plot~email_use
├── @mike~mail~px_report
└── @mike~plot~power_prices
The feed is the primary discoverability feature at novem and is curated for you by the platform. Whilst the exact algorithm is not disclosed and changes often, the primary input to your feed is content produced by other users in your network.
The feed is accessible at the top level of the API under the /feed end point and contains a list of links of the following format:
@username~vis_type~vis_name. The entities link to the respective vis by the user.
You will only find one reference to a specific vis in your feed, but the vis can move up or down in your feed if it gets updated or other relevance scores change.
When viewing a user you can find that users chronological feed under the feed endpoint. e.g. /users/<username>/feed.
└── users
└── <username>
└── feed
├── @example~mail~test_mail
├── @example~plot~test_plot_1
└── @example~plot~test_plot_2
User feeds are always chronological and can be thought of as an activity feed.
Your network on novem is made up of 3 classes of connections:
- Users that you are connected with
- Users that you follow
- Users that you share a group or organisation membership with
In addition your extended network can consist of 2nd and 3rd degree connections as well as be inspired by things you have liked or favourited.
Note: In all feed folders the expected sort order is ascending by the order property. All consumers of the novem
API are responsible for sorting by this property if you want to consume the feed output in its intended order.
By default, all assets produced on the novem platform that a user can access through the default permission structure (public or shared via group) is eligible for inclusion in feed.
To keep an in-progress visualisation out of your own feed (because it's not
ready, or you simply don't want to see it there yet) you can tag it
with wip. The wip tag hides the item from your own feed view; it does not
remove it from other users' feeds.
A user will never see a visualisation in their feed that they don't have access to, so private assets are always private.
Novem offers two primary social constructs, a way to connect with and a way to follow other users.
The connection is an invitation that has to be accepted by the other user, whereas the follow is a one-way
action.
Connections and follows does not grant any additional access or other features at this moment, but might be expanded in the future.
To see the information from a user the user will have to make that information public or share it with a group that you both are a member of.
Connections is the highest order of 1:1 relationships offered by novem.
A connection has to be accepted on both sides and who your connections are will show up on your public profile. (People with private profiles will not show up unless they have a strong connection with the person viewing your profile).
To make a new connection simply PUT the username you want to connect with to the connection group
Once you have initiated a connection the user will get an invitation to connect which they will have to approve by posting a positive value to the invitation.
Yes
Until a user accepts your invitation to connect the user will show up in the list of your connections with
an I- (capital I dash) prefix. (Examples below)
└── admin
└── social
└── connections
├── I-alice
├── bob
└── eve
You can at any point remove your connection with a user by issuing a DELETE against an existing user
invite or endpoint.
Connecting with people are a privilege and excessive invite spamming, frequent retries or other unwanted behaviour may result in your ability to connect being curtailed.
Unlike connecting, follow is a lighter touch, one-way action. You may follow or un-follow anyone you want at any time. In addition, following someone does not require their approval, and as such no invite or acceptance is required.
Managing who you follow is very similar to managing your connections, you use PUT to follow and DELETE to un-follow.
Followers is a list of people following you and is provided for informational purposes only. We don't currently support the ability for you to remove your followers or moderate the list in any way.
Your followers don't interact with you in any way beyond having access to your public assets in their feed.
Ignore lets you manage a list of users you do not want to relate to. When a user is in the ignore list you will not receive invites, messages, notifications or see other information left by the user.
Ignored users will also never show up in your feed.
You manage your ignore list very similar to your following list, simply PUT to add a user and DELETE to remove
a user from your ignore list.
Invites are managed under /v1/admin/invites. The same tree holds three
related things: the connection invitations you've received, the personal
e-mail invitations you send to bring new people to novem, and (on paid plans)
reusable invite URLs.
A GET on /v1/admin/invites lists everything together: inbound connection
invites, your pending personal invites, and your invite URLs.
When someone invites you to connect, the invite appears under
/v1/admin/invites/@<their_username>. Accept it by posting a positive value to
its accept file (shown in Connections above). The same
pattern handles inbound invitations generally.
A personal invitation brings a new person to novem by e-mail. The e-mail address is the resource id:
| Verb | Path | Description |
|---|---|---|
PUT | /v1/admin/invites/:email | Send an invitation to that e-mail address |
DELETE | /v1/admin/invites/:email | Revoke a pending invitation |
GET | /v1/admin/social/invites | List invitations that have been accepted (your invite history) |
PUT / DELETE | /v1/admin/social/invites/:email | Equivalent send / revoke under the social tree |
Pending (not-yet-accepted) invitations show up in the GET /v1/admin/invites
listing. Once accepted they move to /v1/admin/social/invites. Each send draws
down your account's invite quota.
An invite URL is a named, reusable signup link, useful for a meetup or a campaign where you don't know the addresses up front. You create a handle, novem mints an opaque public URL, and anyone who visits it submits their e-mail and joins as your invitee.
Note: invite URLs require a paid subscription. Free accounts can't create them, while basic, premium, and enterprise each allow up to 3 active handles.
| Verb | Path | Description |
|---|---|---|
PUT | /v1/admin/invites/:handle | Create an invite-URL handle; optional JSON body {quota, expiry, description} |
GET | /v1/admin/invites/:handle | The handle's folder |
DELETE | /v1/admin/invites/:handle | Deactivate the handle |
GET | /v1/admin/invites/:handle/info | Aggregated state: active, url, quota, expiry, description, pending and accepted lists |
GET | /v1/admin/invites/:handle/url | The public URL |
POST / GET | /v1/admin/invites/:handle/quota | Per-URL signup cap (bare integer) |
POST / GET | /v1/admin/invites/:handle/expiry | never, an interval, or an absolute timestamp (in your profile timezone) |
POST / GET | /v1/admin/invites/:handle/description | Free-form owner-facing context |
POST | /v1/invite/:token | Public, no auth — an external visitor submits their e-mail here to accept |
Each landed signup decrements both the URL's own quota and your account-level
invite quota, so a URL can't outrun either limit.
Currently there are two ways that you can interact with other users published visualisations.
You can either like or favourite them.
This is done using the novem tag functionality and behaves just as normal tags. The only difference is that aggregate like and favourite statistics are reported on various visualisations.
To like or favourite a visualisation just follow the instructions in the tags documentation.
If you see anything in the feed you do not want to see again, you can also ignore it by tagging it with
the ignore tag.