Skip to main content

Integration Questions list

- Which direction is the sync going from ?
 - SF > other system ?
  - is that system accessible via the internet ?
  - does it support OAuth2 ?
  - does it support TLS1.2 ?
  - Does it have a REST or SOAP API ?
 - other system > SF?
  - can it leverage standard SF APIs ?
  - does it support OAuth2 ?
  - does it support TLS1.2 ?  
 - both ?
  - all of the above, plus:
   - do the synced tables overlap ?
   - if yes, which system is the master ?
   - how should conflicts be resolved ?
- When is data synced ?
 - on record change ?
 - on user action ?
 - at set time ?
 - a combination of the above ?
- What is the amount of data to be synced, in number of records, per table ?
 - If > 1mil yearly:
  - should we archive old records ?
   - where ?
  - should we delete old records ?
  - are BigObjects a possibility ?
  - can we look into having an external data warehouse where we have the data and SF only pulls what is needed ?
- is there a 1/1 correlation between tables in SF and backend, or should we do a custom mapping between tables ?
- are there limits in he other system we need to be mindful of ?

 

 

Pre-scoping questionnaire

Does the client backend have any access restrictions?

Proxy/limited access/etc? Does the backend support TLS1.2 minimum? Does the backend support OAuth2? Are there limits to the number of API calls that can be made? Are there limits in payload size? Are there limits to the delay in answering a specific call? What is the average response time of the API?

 

Is REST the only viable integration solution?

  • Do all the data flows have to be real time?
Can some data flows be handled via batch nightly loads instead of REST integration? Is the tight coupling REST integration forces a problem for the future? In case of real-time data sync, has events-based architecture been considered?

 

Does the client have documentation they can send over?

  • Swagger or equivalent?
Lacking that, basic pdf documentation? Lacking that, examples of calls and responses? Lacking that, can the client provide a list of supported methods (GET, PUT, POST, etc), and expected formats (JSON, XML) ?

 

Are all data flow operations possible in the current backend?

  • Do endpoints exist for all specified data operations?
If yes, are they considered stable? If no, can new endpoints be developed, or existing endpoints adapted? If yes, in which timeframe? If yes, is this viable for the current project? If multiple calls depend on each oth