Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Last Updated: Dec 20, 2012

...

About

The Pull Model is a way for Integration Partners to request records that are new or updated since last last time they called. This model is useful in a scenario where the usual real-time synchronization model will will not work.

Process

  1. The Integration Partner initiates a "pull" from the Connector.

...

  1. Sample URL is: 

    Code Block
    <URL>/connector/api/2011-11/missingusers?

...

  1. provider=XYZ&clientID=TEST_CLIENT&clubID=TEST_CLUB
  2. This will return a list of ALL users in the Connector database that meet one of

...

  1. two conditions
    1. The Connector does not have a XYZ User ID for that user (i.e. new user)

...

    1. The record has been modified since the last time XYZ fetched (and sync'ed)

...

    1. the user (i.e. updated user)
  1. Note this list is limited to 50 records, last in first out
  2. Sample response is below
  3. How the Integration Partner handles the lookup is up to them. What MUST happen is

...

  1. callback to the Connector which is an acknowledgement that "I've sync'ed this user". A

...

  1. sample web service call here is a POST to <URL>/connector/api/2011-11/user/callback

...

  1.  with the ID from the system making the pull (example below)
  2. After this callback is made, the user will not appear in the pull call again (unless the

...

  1. user is updated again in InTouch)

1.

2.

3.
4.
5.

6.

Pull Response Example:

...

Examples

Example Pull Response

Code Block
languagehtml/xml
<user>
	<userInfo>
		<connectorUUID>ce507497-992c-4eb8-bc7e-b0d46e7aa53f</connectorUUID>

...


		<createdBy>INTOUCH</createdBy>

...


		<createdDate>2012-06-28T18:26:29.101Z</createdDate>

...


		<modifiedBy>INTOUCH</modifiedBy>

...


		<modifiedDate>2012-07-03T23:55:49.937Z</modifiedDate>

...


		<firstname>John</firstname>

...


		<lastname>Doe</lastname>

...


		<userStatus>ACTIVE</userStatus>

...


		<userType>PROSPECT</userType>

...


		<address1/>

...


		<city/>

...


		<zipcode/>

...


		<country>US</country>

...


		<mobile>(213) 688-1441</mobile>

...


		<email>dblack@goldsgymla.com</email>
		<homePhone/>

...


		<workPhone>(213) 688-1441</workPhone>

...


		<company/>

...


	</userInfo>

...


	<userInfo>
		snip... repeat userInfo segments here

...


	</userInfo>

...


</user>

Callback

...

Example

Code Block
languagehtml/xml
<user>

...


	<providerInfo>
		<identifier>XYZ</identifier>

...


		<clientID>100</clientID>

...


		<clubID>200</clubID>

...


		<recordID>1001</recordID>

...


	</providerInfo>

...


	<userInfo>
		<connectorUUID>ce507497-992c-4eb8-bc7e-b0d46e7aa53f</connectorUUID>

...


	</userInfo>

...


</user>