Please explain the new fields in the install webhook

I’m seeing new fields in the install webhook:

{
  "type": "install",
  "data": {
    ...
    "user_cluster": "information_technology",
    "account_tier": null,
    "account_max_users": null,
	...
  }
}

Some questions:

  • What are valid values for user_cluster and what is it for? So far I’ve seen :
    • crm
    • education
    • information_technology
    • ngo
    • operations
    • other
    • product_management
    • tech
  • Are you aware that account_tier and account_max_users are not populated?
  • Do these new fields have exact equivalents in the {{account}} in the graphQL API?

Hello there @dvdsmpsn!

The cluster is used for the user’s area of work.

account_tier and account_max_users will not have a value when the tier is “trial”.

You can get this information (all but the cluster) with this query:

{
  account {
    plan {
      tier
      max_users
    }
  }
}

Hope that helps :slightly_smiling_face:

Cheers,
Matias

Hi @Matias.Monday

Thanks for the response.

I’m seeing account_tier having values of both free and null (as well as standard, pro, & enterprise, and probably basic).

Can I assume that both free and null are the free tier, and as such, the null value for account_max_users actually means a maximum of 2 users?

Cheers, David.

Hello @dvdsmpsn !

I am sorry, that was a mistake on my end. I meant the “trial” tier comes as null.

1 Like

@Matias.Monday Please note that

account {
  plan {
    tier
  }
}

returns a non-catchable Cannot return null for non-nullable field Plan.tier error sometimes.

1 Like

Thanks for this @Matias.Monday.

So to clear up any misunderstandings, I believe that this …

Trial tier

// account_tier === null
//   && account_max_users === null

{
  "type": "install",
  "data": {
    ...
    "account_tier": null,
    "account_max_users": null,
	...
  }
}

Free tier

// account_tier === 'free' 
//   && (account_max_users === null || account_max_users === 0)

{
  "type": "install",
  "data": {
    ...
    "account_tier": "free",
    "account_max_users": null 
      // actually up to 2 users ( or `0` in graphQL result)
    ...
  }
}

Other tiers

Tiers: basic | standard | pro | enterprise

// typeof account_tier === 'string'
//   && Number.isInteger(account_max_users)
//   && account_max_users > 0

{
  "type": "install",
  "data": {
    ...
    "account_tier": "free",
    "account_max_users": 5, 
	...
  }
}

An internal monday.com instance

// account_tier === null
//   && user_cluster === null
//   && Number.isInteger(account_max_users)
//   && account_max_users > 0

{
  "type": "install",
  "data": {
    ...
    "user_cluster": null,
    "account_tier": null,
    "account_max_users": 10000,
	...
  }
}

@rob Thanks for this.

I think that account.plan.tier is null for trial monday.com accounts and some of monday.com’s internal instances too.

Likely, we can assume that it’s a trial if that query comes back with an error code :crossed_fingers:.

@dvdsmpsn
I mean that in our experience, querying the tier sometimes returns the error above.
If you have a more complex query, like:

account {
  id
  name
  plan {
    tier
    max_users
  }
}

and you get the error, you need to re-run it without the tier option:

account {
  id
  name
  plan {
    max_users
  }
}
1 Like

Hi @dvdsmpsn!

Your examples look good!

1 Like

@mattias.monday OK, here’s a new one to me:

{
  "type": "install",
  "data": {
    ...
    "account_tier": "pro",
    "account_max_users": 0,
  }
}

If it’s a pro tier with account_max_users as 0, what’s going on here?

Does 0 users really mean (up to) 2 users? and if so, how can a pro tier have 2 users?
monday.com pricing and plans suggests that the pro tier starts at 3 users.

I am confused once more.

Hello @dvdsmpsn!

Can you please send us to “appsupport@monday.com” the account ID of the account that gave you that result?

Please mention this post in the email and mention that the email is addressed specifically to Matias.

Cheers,
Matias

1 Like

Hello @rob!

Can you please send us to “appsupport@monday.com” the account ID of the account that gave you the Cannot return null for non-nullable field Plan.tier error?

Please mention this post in the email and mention that the email is addressed specifically to Matias.

Cheers,
Matias

1 Like

@Matias.Monday further to our conversation elsewhere (support emails), you said that in the install hook below…

{
  "type": "install",
  "data": {
    ...
    "user_cluster": "ngo",
    "account_tier": "pro",
    "account_max_users": 0,
    ...
  }
}

… NPO (non profit organisation) plans “will show 0 seats in our backend”.

Is there a way to get hold of the user_cluster in graphQL, so that we can spot the NPOs using our apps?

– I’ve looked, but couldn’t find anything useful.

What values will be in user_cluster for NPOs?

ngo and some others?

I see that you currently charge NPOs for >10 seats.

Does this mean that NPOs:

  • with >10 seats will have the correct value set in account_max_users?
  • with <10 seats will have "account_max_users": 0?

– I’m only guessing at this point.

Best wishes, David.

Hello there @dvdsmpsn!

As of today, the cluster can not be retrieved via API.

I will come back to you about the other question.

1 Like

Done. Waiting for a feedback from your side.
Thanks.

Hello @dvdsmpsn !

Our team confirms me that an NPO (non profit) can have any cluster value.

Regarding your questions about NPOs, yes. What you guessed was correct :slightly_smiling_face:

Cheers,
Matias

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.