How to manually review Webflow membership applications using Airtable

Hello :wave:

We are trying to create an automation which allows us to review membership applications before approving them.

We are struggling with setting the approval status within Airtable and then having it create a membership account, as well as not being able to pre-define the access group for the account.

The current process works as follows:

  • A user fills out a native Webflow form on the website
  • The form submission triggers an HTTP Request using Webflow Logic
  • The request posts the form submission data using the Webflow API to an Airtable Base
  • The Airtable Base is populated with the fields from the form submission via the API
  • Using a Whalesync connection between Airtable and Webflow, new records are automatically added as members in Webflow (not something we want to happen yet)
  • Invitations are automatically sent to users by Webflow to register for an account (not something we want to happen yet)
  • Users register for an account using the unique Webflow membership token (not something we want to happen yet)
  • A big problem is that now registered and verified users have not been automatically assigned an access group and, despite now having an account, cannot see any website content until manually added to an access group within Webflow (not something we want to happen)

Does anyone have any ideas or solutions to the following questions:

  • How can you approve or reject an application within Airtable?
  • How can you automatically send emails to users who have been rejected in Airtable?
  • How can you automatically send invitations from Webflow to manually approved users in Airtable?
  • How can you automatically assign approved users in Airtable to an access group in Webflow?

We are unsure of the API/webhook setup that might connect this all together and would prefer to do this as much as possible using just Webflow’s Logic and API. However, if required, we could glue it together with Integromat(Make) or similar services. Or do we just use Memberstack?

Any ideas would be very much welcomed! :smiley:

Phew :sweat_smile: that’s a lot :smile:

But what you’re asking is totally doable.

You’ll need to take advantage of Airtable Automations.

The common approach is when you (for example) check a checkbox in a row, within your table, it triggers an automation.

That can be your “approve / reject” status.

Part of that automation can be sending an email when they are approved or rejected:

To automatically send invitations from Webflow, trigger this Webflow API from the automation:

When you trigger the Webflow API to send an invitation, you can assign an access group.

You’ll have an easier time using a free Make (Integromat) account. Here’s a screencast walking through that setup:

I poked a bit of fun saying this was a lot, but really… it’s not :smile:

Glueing things together like this is fairly common and once you get the hang of it, it’s really simple

1 Like

Hi Mariana,

Everything you’re describing so far is pretty straightforward.

I generally use progressive statuses to manage flows like this. It makes it easy for you to administer, and easy for automations to target specific work.

Here you might have statuses of;

  • New request
  • Action - Reject
  • Action - Approve
  • Rejected
  • Approved

The “Action” states are states you choose are transitional, meaning they define work to be picked up and completed by your automations. Once the automations are complete, they update the record to a stable state.

States also makes it very easy to setup filtered views for your team.

In the scheme above, you have an automation that polls the table nightly, or triggers from a view, looks for “Action - Reject” states. It sends the email ( via Mailjet, etc. ), and then updates the record to “Rejected”.

Very similar, but the automation looks for “Action - Approve” states. It then used the Webflow API to invite the user by email, and then updates the record to “Approved”.

Since you’re manually approving, and then inviting users through the API, you can just specify the accessGroups you want to invite them to;

https://developers.webflow.com/reference/invite-user

If you needed to change those groups later via the API, you can do that as well;

https://developers.webflow.com/reference/update-user-access-groups

Hi @ChrisDrit & @memetican

Thank you for your responses; they are very much appreciated!

@ChrisDrit - Thanks for the advice on using Airtable Automations to send emails to users informing them of approval or rejection.

It wasn’t clear how to trigger the Webflow Membership invitation from Airtable using the Webflow API. The invitation needs to be prompted by a change in approval status within Airtable to Webflow, which then sends the membership invite.

The Webflow form submission is seemingly redundant with the data now in Airtable, which is either approved or rejected before an invite is sent from Webflow. We are unsure how to use Integromat (Make) with an Airtable change and send this to Webflow Membership. We had read the guide you shared for Integromat, but it did not seem to relate.

Any suggestions?

@memetican - Great to hear you think we are not doing something crazy and that it is feasible! We liked your suggestion on progressive statuses.

How would we set up an automation between the Airtable status change and a service like Mailjet or MailerLite etc?

We are unfamiliar with how to send an update to a record in Airtable to Webflow Membership and, specifically, the setup for assigning an access group. Currently, we rely on Whalesync to send new Airtable records from the form to Webflow Membership, where an invitation is sent immediately instead of waiting for an approval in Airtable.

We have read the Webflow API guide for Inviting and Updating Users but are still none the wiser. We are very much newbies here! Any assistance or guidance on this would be massively appreciated.

Once again, many thanks!

I’ve not used Whalesync’s memberships sync, however they do not support access groups, or custom user data currently.

When you sync invites using Whalesync, do the invited users pick up the default Access Groups that you have configured Webflow to assign to new users?

If so, one option is use to use Whalesync to create your new members, and then literally delete the default Webflow memberships sign-up form so no one can self-invite.

It’s not Pentagon-level security, but, should do well here.

If that’s not the case, or if you need to support varied access group configurations by-user, you’ll need to familiarize yourself with another automation platform like Make. The last I checked, Logic cannot call Webflow’s API, which means you’d be unable to do the access group updates using a Logic flow.

Make is similar to Logic, but it’s a much more mature platform.

You have Webflow API docs, and here’s Airtable’s.

https://www.make.com/en/help/app/airtable

If you need to go that route, and want help- Chris Drit works a lot with Make and Airtable so if he has some free time you might contract him to build this bridge for you and teach you how to admin it.

You can also direct message me here if you’d like to.

@memetican - Yes, we noticed that Whalesync’s membership sync did not support access groups yet or custom user data, which is unfortunate.

When Access Group settings are set as Group Type - ‘Free Access’ and Grant Access ‘After user signs up and verifies their account’, the user is assigned to an Access Group once invited to register an account. If the Grant Access setting is set to ‘After manually adding users to this group’, they cannot access any articles and receive access blocked messages, despite having registered an account.

This process doesn’t quite work because when an access request form is submitted via a Webflow, it automatically creates a record in Airtable and then automatically is picked up by Whalesync and which is then sent to Webflow Memberships that creates a User Account and sends an invite to register. This would mean everyone who submitted an access request form would be sent an invite to register for an account.

What we need is a break between a record being created in Airtable for it to be reviewed and then, once approved, an invite is sent from Webflow Memberships.

You cannot delete the Webflow Membership Sign Up page, but you can remove any links to it. In any event, only those who are sent an invite can register using that page, as the token is unique and bound to the email address which has been invited.

Thank you for providing the link to Make’s API integration with Airtable; we will try to familiarise ourselves with it.

@memetican - We really appreciate your suggestions on solving this conundrum; we can’t be the only ones trying to achieve this set-up!

@ChrisDrit - We would be interested to know if you could assist us with this issue.

Got it, you’d need a way to force Whalesync to only sync approved users.
Can Whalesync sync from a view?

If not, you’d likely need to have separate Airtable tables for your requests and your approved members, and do a bit of AirTable work to build that approve-and-copy-record process.

I do lean towards building this out manually via Make, because I prefer more complete control over the details of the process.

Hopefully Chris has some hours free for a small side-gig, he cracks out Make automations blindfolded.

@memetican You were correct; Whalesync can sync from a view in Airtable.

We just had a quick call with Matthew, who showed us how we could set an ‘Approved’ status for a Webflow Form submission in Airtable a view and have that record filtered in another view. Whalesync would then sync the ‘Approved’ submissions view with Webflow Membership. This solved the issue.

That being said, after all that, I think we will switch to Memberstack, having found out about this:
Reddit - Logic & Memberships will stop being developed

1 Like

Memberstack is great, particularly for content-centric sites with some per-user customization.

If your content is in any way secure, or if you’ll be doing a lot with features like interactive dashboards, you might want to look at Wized.

Good luck! Memberstack is a great platform!

1 Like