Top 10 SaaS Data Access API Challenges in Data-Driven Marketing

November 13, 2017 Data & AI

Organizations and application developers rely on access to their data. Here are ten of the most common challenges they face—and how to solve them.

With the proliferation of data silos in SaaS CRM and Marketing applications, data-driven organizations and application developers are facing challenges in keeping up with the APIs specific to each system.  

SaaS applications have their own proprietary web service APIs across SOAP, REST, or both. While a developer or application may expect SQL support, in reality the implementations are SOQL, ROQL, and other variations on the standards.

Fragmentation across systems limits the data sources an application can support, and even leads to new projects like building a Marketing Data Lake

Businesses and developers expanding support to SaaS sources face these 10 major challenges.

  1. Some SaaS Sources do not have a query language

    For some SaaS vendors, it may not make sense to have a query language. In those cases, building standards based connectivity can be equally challenging since each object is exposed with a different API with each having unique rules for invoking, filtering, searching, etc.

  2. SaaS query languages have their own rules to access data

    Even if a source has a query language, each has its own rules for accessing data. For instance, one query language may be able to handle a particular query and whereas others cannot, which means connectivity or application code must handle it.

  3. SaaS sources do not necessarily support the entire SQL standard

    SaaS sources may have a query language that is a subset of SQL or "SQL like". For example, Salesforce Platform has SOQL while Oracle RightNow has ROQL. An application connecting to these sources must account for the unique variations.

  4. Multiple Data Formats to support - JSON, XML, CSV, etc.

    Each SaaS API format returns results in a different way (JSON, XML, CSV, etc.) making it hard to build a generic solution. Each API has different governors or limits for fetching, aggregating and sorting results. For example, some sources return a max of 10,000 results at a time, which the data access code has to manually page and reorder.

  5. CRUD operations for SaaS Applications are complex

    Updates, Deletes and Inserts with SaaS APIs are very different than relational databases. A SaaS API can require an ID to be fetched for each target object to be updated, which is inefficient for updating multiple objects that need to be chained to optimize network packets.

  6. No standard for exchanging dates

    All SaaS dates are exchanged in UTC, but not all clients expect dates in UTC. It’s up to the data access code to localize the date appropriately, and ensure the round trip is successful for writes.

  7. Different Security and Authentication Methods

    CRM and Marketing systems contain a company’s most valuable information—customer data. Each SaaS application has different challenges in authenticating users, and a security breach in support or implementation is simply not an option.

  8. Metadata can be Static or Dynamic

    SaaS applications support either static or dynamic object models. With dynamic object models, the schema needs to be discovered by the data access code. However, some applications do not detect changes to the schema.

  9. SaaS connectivity performance varies between different sources

    Even if you get the hang of building SaaS data connectivity, you will eventually run into sources that just won’t perform well under a certain workload. You will have to revisit all available APIs and architectures to fix this issue.

  10. SaaS APIs change rapidly

    Most importantly, SaaS APIs are always updating. While the updates appear seamless to end users, it is quite the opposite for data connectivity developers. For example, Salesforce.com changes their API once a quarter which means your code needs to be recompiled each time.

When confronting these challenges in supporting multiple CRM and Marketing SaaS systems, an application vendor or developer must determine the best solutions for their situation. Coding from the ground up for each data source may not be feasible, especially when time to market is an issue. 

Standards-based connectivity was created nearly 30 years ago to solve this exact dilemma. With a robust implementation, standardized connectors can provide access to many data sources with the consistency expected by application code.


DataDirect Hybrid Data Pipeline

Hybrid Data Pipeline is a powerful solution for the problem of multiple APIs for multiple data stores. Data Pipeline is a self-hosted hybrid connectivity service that you can run in the cloud or on-premises. Data Pipeline can give you access to data in the cloud or on-premises behind a firewall. Connect through a standard interface—SQL (ODBC, JDBC) or REST (OData)—to multiple data sources with just one code base. You don't have to learn every API—we do the work for you.

Download DataDirect Hybrid Data Pipeline and try your own Hybrid Connectivity service today!

Try Now!

Nishanth Kadiyala

Nishanth Kadiyala is a Technical Marketing Manager at Progress. He got his B.Tech degree from IIT Guwahati and his MBA from UNC Chapel Hill. He has worked on several technologies including database designing, SQL querying and Cloud Computing in the past. Currently, he is committed to educating enterprises about standards based connectivity via ODBC, JDBC, ADO.NET and OData. He is also proficient with DataDirect Hybrid Connectivity Services – DataDirect Cloud and Hybrid Data Pipeline. You can stay in touch with him through Twitter.

Read next Progress DataDirect Now Connects to Denodo