question

danderson avatar image
danderson asked danderson answered

REST API: Modifiers - Show Online status doesn't seem to change / No way to disable

Good afternoon!

We are utilizing the REST API to pull items, modifier groups, and individual modifiers to build an online ordering experience for a client. On the client's Clover dashboard, they are able to see these individual modifiers and see a checkbox labeled "Show Online".

Unfortunately, when we pull these modifiers via the REST API, nothing seems to have changed with their data payload. There is no property denoting online visibility, and "available" is marked as true for the modifier.

Below you'll find a snip of the REST API response and a screenshot of the modifier in question on the Clover Dashboard. Thank you for your time!

Question 1: What property is affected by checking/unchecking "Show Online" on the modifier? Is this property available through any of the REST API endpoints related to modifiers?

Question 2: If this property is unavailable via the REST API, is there any way our client can toggle "available" to false via the Clover dashboard or otherwise denote the modifiers as disabled in the REST API?

REST API RESPONSE:

{
    "id": <redacted>,
    "name": "Applewood Smoked Bacon",
    "available": true,
    "price": 175,
    "modifierGroup": {
        "id": <redacted>
    }
}


clover-rest-api.pngModifier in Clover Dashboard

REST APIModifiers
clover-rest-api.png (15.6 KiB)
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Marginian avatar image
David Marginian Deactivated answered danderson converted comment to answer
3 comments
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

danderson avatar image danderson commented ·

Hi David, thanks for the quick response!


Unfortunately it doesn't seem to help. While I can see the hidden property on items, there is no equivalent property on modifiers. The payload in the code block of my post is everything that is returned when we use both of the following endpoints:

  • /v3/merchants/<Merchant ID>/modifiers?filter=id=<ModifierID>

  • /v3/merchants/<Merchant ID>/modifier_groups/<Mod Group ID>/modifiers/<ModifierID>

For further reference, this is the REST API endpoint we are using:
https://docs.clover.com/reference/modifiergetmodifier

Just to narrow the question down to a single one: Is there any way possible via the Clover Online Dashboard ( logging in via www.clover.com ) to disable a modifier and alter the available property on it that is returned via the REST API?

0 Likes 0 ·
David Marginian avatar image David Marginian ♦♦ danderson commented ·
I am guessing there isn't right now, to be clear you want to set "Applewood Smoke Bacon" to "show online" via API, correct? Obviously we have internal APIs for that right now but I do not believe we currently expose that functionality via our public API.
0 Likes 0 ·
danderson avatar image danderson David Marginian ♦♦ commented ·
To clarify, it's not that we want to set that value so much as we just want to read it. We can set the available parameter on the modifier via the API by submiting a POST request to update the modifier, but we didn't want to burden our client with another external application just to turn modifiers on and off when they might run out of them in their physical store location.


If being unable to read that property is unavailable through the REST API at this time, that's very unfortunate and may severely hinder what we can offer our client.

0 Likes 0 ·
danderson avatar image
danderson answered

Good morning David!


Just wanted to touch base and update that we did some more digging on this. We found that there is an undocumented expand parameter - expand=menuModifier - that gives us additional properties on the response payloads for modifiers. Included in this is the enabled property mentioned in the other post you had linked which correlates directly to the status of the "Show on Online" checkbox.

So it looks like this just a case where the REST API documentation needs to be updated. Thanks for your help!

2 comments
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

David Marginian avatar image David Marginian ♦♦ commented ·
I am aware of this. It is not a public API, use at your own risk. This is a relatively new feature, we proof our APIs internally before we release them to the public. This means that things may change in a non-backwards compatible way.
0 Likes 0 ·
danderson avatar image danderson David Marginian ♦♦ commented ·
I understand, however it doesn't seem like we have any other option.


Unless I'm missing it, there is no UI element accessible in either the Station or the Online Dashboard that seems to modify the available parameter on Modifiers that are returned via the public REST API.

Because of this, we will just have to adjust to changes made when we detect that they occur. The only other option would be to design a third party application to manage the availability of their Modifiers, and taking them out of their Clover/POS environment to manage that one element when they already manage the rest of their inventory ( including item availability ) through Clover would be a poor user experience.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Welcome to the
Clover Developer Community