Members are the people in your community. Each activity is performed by a member in a platform. With the members API, you can create, update, find and delete members. You will also be able to query members with custom sorting and advanced filtering.

Member attributes

At crowd.dev, we understand that members are the epicenter of the community. Therefore, we know it is essential that you can add and query as much information about them as possible in the most flexible way possible. This is why community members in crowd.dev can have custom attributes.

  • Do you have a set of members that attended a conference you hosted? You can create an attended_conference_2022 attribute

  • Do you want to store their clothing size to send them swag? You can create a clothing_size attribute

  • Do you want to store their pronouns so your teammates know how to address them? Create a pronouns attribute

Attributes from different platforms

Some attributes, for example, bio, could have different values for different platforms. A member can have their bio on Twitter and GitHub. And you might know an alternative bio from their personal website. All this information is stored since each attribute can have a different value for each platform. There will also be a default key, the value displayed in the main UI component and used by default when filtering. The default value is picked in the following order:

  1. custom (for a custom value added by the user)
  2. Twitter
  3. GitHub
  4. DEV
  5. Slack
  6. Discord

So, for example, a member with the following location attribute.

{
    "github": "location1",
    "twitter": "location2",
    "default": "location2"
}

will have as default location2, since Twitter has a higher priority than GitHub.

Creating member attributes

Since we allow filtering on member attributes, an attributes schema has to be defined before creating any new attributes. This is analogous to creating a new property in Notion or Baserow.

To create a new attribute you can use the create attribute endpoint.

If you try to add a member with an attribute that has not yet been defined or send the wrong type, you will receive an error.

Default attributes

Some attributes are very commonly used and will therefore be created for you as soon as your crowd.dev workspace is created. These are:

  • bio (string)
  • location (string)
  • url (string)
  • jobTitle (string)

You can add these attributes to members without needing to create them first.