GraphQL API Implementation

GraphQL API Implementation

Does Zoho have any plans in the foreseeable future to add GraphQL to the API so that we can have some flexibility with our API requests?

GraphQL would allow us to get the data we wanted, and would drastically minimise API requests, reducing server loads on both sides.


With the API requests minute limit being reduced recently from 100 to 30 calls per minute, it is making it very difficult to do an inventory synchronise between platforms without lots of backend waiting so that we don't get locked out of the API.

My reasoning for this is just to get the required item information for a single SKU takes 4 rest api calls. (1 less if using pagination for bulk get)
1) https://www.zohoapis.com/inventory/v1/items?sku=sku1 (Gets minimal info)
2) https://www.zohoapis.com/inventory/v1/items/1234567890 (Gets more info)
3) https://www.zohoapis.com/inventory/v1/itemdetails?item_ids=1234567890 (Gets more required info)
4) https://www.zohoapis.com/inventory/v1/items/items/images/1234567890

For a full synchronise of items to another platform, the 30 api calls is blown out before we even get the required information back.

1) items = https://www.zohoapis.com/inventory/v1/items?per_page=200,page=1 (Gets minimal info of all items using pagination)

foreach (items as item) {
      
      2) https://www.zohoapis.com/inventory/v1/items/1234567890 (Gets more info)
      3) https://www.zohoapis.com/inventory/v1/itemdetails?item_ids=1234567890 (Gets more required info)
      
4) https://www.zohoapis.com/inventory/v1/items/items/images/1234567890

      *** API LOCK OUT BY MINUTE LIMIT BEFORE GETTING THE 10TH ITEM ***
      wait(60) # setup a wait function for 60 seconds so we don't go over the 30 calls.
}

To synchronise 1,000 items to another platform will take 112 minutes via Zoho API. Nearly 2 hours, WTF...

GraphQL would be 1 API call for 200 items with ***ALL*** the data we require.
{
      items {
            item {
                  details {
                        sku
                        price
                        brand
                        manufacturer
                        weight
                        custom_fields {
                              customfield_id
                              api_name
                              value
                        }
                        whatever_other_fields_required
                  }
                  images {
                        image_name
                  }
            }
    }
}

This would also be the case for creating, updating, deleting resources.

With GraphQL using pagination of 200 per page, we could get 6,000 resources within the 30 api calls in the minute. Much more than the dismal 9 using rest api.

GraphQL is very powerful query language, hence why all the major players use it such as Facebook, Paypal etc.

I'd like to hear other programmers thoughts on this too.
    Zoho Desk Resources

    • Desk Community Learning Series


    • Digest


    • Functions


    • Meetups


    • Kbase


    • Resources


    • Glossary


    • Desk Marketplace


    • MVP Corner


    • Word of the Day


      • Topic Participants

      • todd

      Zoho CRM Plus Resources

        Zoho Books Resources


          Zoho Subscriptions Resources

            Zoho Projects Resources


              Zoho Sprints Resources


                Zoho Orchestly Resources


                  Zoho Creator Resources


                    Zoho WorkDrive Resources



                      Zoho Campaigns Resources

                        Zoho CRM Resources

                        • CRM Community Learning Series

                          CRM Community Learning Series


                        • Tips

                          Tips

                        • Functions

                          Functions

                        • Meetups

                          Meetups

                        • Kbase

                          Kbase

                        • Resources

                          Resources

                        • Digest

                          Digest

                        • CRM Marketplace

                          CRM Marketplace

                        • MVP Corner

                          MVP Corner

                        • Word of the Day

                          Word of the Day


                        • CRM Community Learning Series

                          CRM Community Learning Series


                        • Tips

                          Tips

                        • Functions

                          Functions

                        • Meetups

                          Meetups

                        • Kbase

                          Kbase

                        • Resources

                          Resources

                        • Digest

                          Digest

                        • CRM Marketplace

                          CRM Marketplace

                        • MVP Corner

                          MVP Corner

                        • Word of the Day

                          Word of the Day



                          Zoho Writer Writer

                          Get Started. Write Away!

                          Writer is a powerful online word processor, designed for collaborative work.

                            Zoho CRM コンテンツ




                              ご検討中の方