API deficiencies

I’ve recently spent a significant amount of time to try and integrate Monday.com with our corporate CRM only to find out that the API is incomplete due to lack of support for some column types. More importantly the API gaps are undocumented and are visible only when trying to use an API call to receive ‘This column type is not supported yet in the api’ from the server. While not having a feature-rich API is OK, not being able to automate is not great in my book.

So far what I’ve learned the hard way that:

  1. Location column is not supported
  2. Link column is presumably supported but is broken (I reported this in another post)
  3. Link to other board is not supported
  4. File is not supported (clearing is supported, but really…)

It would be great for the Monday.com team to provide some clarity on the API situation and give some indication on when the gaps in the API support are going to be fixed.
Thanks!

Just ran into this too. This is extremely frustrating, and I would not have upgraded had i known about these API limitations.

There doesn’t seem to be any ETA’s, just customers reporting it since 2019, and as of yet no update.

2 Likes

Just to update on my previous post. It does not look like Monday team is interested in addressing my concerns so at least this will be available on Google/discource search as a warning for potential developers.

Link column was silently fixed and is working now.

  1. You could only create updates, not delete or edit them, and no fields aside from the body could be set (so no attachments etc)
  2. Infobox is not accessible via API2

Hey Ilya,

Thank you for this feedback and I apologize for the radio silence here. We do monitor the developer community and are taking this feedback into consideration as we plan our product increments each quarter. I know you’re looking for a specific ETA for each feature, but our team is pulled by competing needs and we cannot commit to any timeline for these items at the moment.

That said, I do want to give you a quick update on each of your requests, based on the current state of affairs:

  1. The location column is a highly requested feature and currently on our API feature backlog.

  2. We did have a bug with the link column but it was fixed, as you noted in your other post.

  3. Support for the link to item column is one of our most requested features, and is up next on our API backlog. You can currently read the data in a link to item column, but we also want to add the ability to update the data inside the column.

  4. File uploads and downloads are now supported in the files column and on updates. Check out the documentation for more information: https://monday.com/developers/v2#mutations-section-files

  5. As of right now, you can create an update with the body and also attach files to it. I have passed your suggestion for editing and deleting updates to the team!

  6. Support for Info Boxes is on our feature backlog as well. I’ve passed your vote for this feature along to the team as well.

Cheers!
Dipro

1 Like

@dipro-monday.com highly appreciate your response, thank you very much! Link to Item (and especially multiple items) will be a game-changers as it would allow cross-linking boards via API

2 Likes

I agree with this thread. Not to be harsh and I’m sure people will say “you’re so negative!!” but the monday.com api situation is… garbage.

The zapier integrations are riddled with bugs. So many that I’m surprised Zapier hasn’t dropped you from their platform, which normally is bug free with the ~25 or so other apps we use in Zaps.

To make matters worse, the new graphql based monday.com apiv2 is TERRIBLE to work with since you have to send curly braces and quote marks inside json objects when interacting with it which requires tons of escaping. BARF. Did actual software engineers design this? You are not facebook. You are not above REST. This is misguided.

I really am hesitant to give monday.com any money for our team and switch us over from asana given the state of affairs with the API and integrations. It reflects poorly on the quality of the codebase which means more bugs down the road for everyone using the product. And from my conversation with Zapier, it sounds like some of the issues with them have been open for a long time without resolution.

Hey Jake,

You’re not being harsh – we appreciate users like you who care enough about our platform to give us feedback like this. I’ll pass your feedback along that a more RESTful API would be helpful for you.

As for your comment on having to pass JSON values with escapes and curly braces, GraphQL has an elegant solution in the form of GraphQL Variables.

GraphQL Variables allow you to pass your JSON objects to our API outside the main query string, which means you don’t need to worry about string interpolation. Instead, you can rely on a JSON serializer to convert hash tables into valid JSON and pass them separate to the query.

Check out one of our API quickstart tutorials for more information on this approach.

As for our Zapier integration, we’re working on a new Zapier module that will take advantage of our new API.

Cheers!
Dipro

@dipro-monday.com I would definitely second the suggestion of restoring and improving REST API. It is difficult to see an advantage of GraphQL for working with Monday boards data - they are ideal for REST. It’s not too difficult to work with GraphQL either - just kind of pointless.

@dipro-monday.com Thanks for the quick reply. The graphql variables may help, will try that. Overall though it’s frustrating to have to do all this with zapier code blocks or custom js instead of just the built in zapier tools which are very quick to build with. Hopefully you guys can improve the zapier functionality soon.

Do you have any timeline on when apiv1 may be deprecated, btw?

Also pls pass on to the eng team that it’s VERY annoying the graphql api validates types of inputs so stringently, e.g. if you have a mutation with an item_id and that item_id is passed in as a string not an int, you get type mismatch errors. Your api should do the work to realize it was just handed a string of numbers that is in fact an id and just convert it if that’s what it needs. Running into this issue with python and graphql vars.

I’m definitely curious about the frustrations using GraphQL. I have to say that I love using it over REST tactics.

The ease of the issue for me is that designing the change string is the only need for any call. I understand some frustration with escaping, as I too believe that should be handled by Monday’s endpoint. However, it’s pretty simple in almost every language to replace the necessary characters with escape strings. Since I know where and what they will be, I’ve built simple functions to call repetitively. That’s also my favorite part about the call style. EVERYTHING is done within the query string, which makes call repetition for different changes extremely easy to set up.

I have many frustrations with Monday’s API catalog as of now, but all of them have to deal with lack of support for existing GUI functions. I think the GraphQL can stay, so long as function support is increased.