Index | Authentication | Offices | Associates | Properties | Property Descriptions | Property Rooms | Property Images
Lookups | Geo data | Files

Associates

Supported methods

* All listings are provided as example.They might not contain the entire list of fields. For the complete list of fields, please consult the corresponding data dictionary.

Get associates

This method returns the paginated list of associates.

Using the default options, the method returns only public available associates (associates that are not disabled and not hidden). See optional parameters below.

You cannot get the entire list of associates in one call. You have to make multiple calls, in pages, until you get the entire list.

Call

GET integrator/{integrator id}/associates?page={page number}&take={page size}

All parameters can be used in the same time. Their effect is cummulative.

Required parameters:

page
Represents the page number you want to retrieve from the available list of records. The minimum value is 1. The maximum value can be found out from the Response from TotalPageCount element.
take
Represents the page size. How many records a page should contain. The minimum value is 1, the maximum value is 100.

Optional parameters:

all
If this optional parameter is ommitted or all=false, then only public available associates (associates that are not disabled or hidden) are retrieved. If all=true, then all resource records are retrieved.
startDate
If this optional parameter is used, then only records that were modified from this date (inclusive) will be returned. Use English date format. Recommended format: yyyy-MM-ddThh:mm:ss
endDate
If this optional parameter is used, then only records that were modified until this date (inclusive) will be returned. Recommended format: yyyy-MM-ddThh:mm:ss
officeID
Get only associates that belong to this Office ID (this is the GryphTech office ID)

Request

GET http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates?page=1&take=100 HTTP/1.1 

Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk+", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 
Accept: application/xml; charset=utf-8

Response XML

HTTP/1.1 200 OK 
Content-Type: application/xml; charset=utf-8

<RexApiList> 
  <HasNextPage>true</HasNextPage> 
  <HasPreviousPage>false</HasPreviousPage> 
  <PageIndex>1</PageIndex> 
  <PageSize>100</PageSize> 
  <TotalCount>346</TotalCount> 
  <TotalPageCount>4</TotalPageCount> 
  <Items> 
    <Associate> 
       <AgentName>Al Haragely</AgentName> 
       <CollectionsCertified>false</CollectionsCertified>
       .....
</Associate>
.....
</Items>
</RexApiList>

Response JSON

HTTP/1.1 200 OK 
Content-Type: application/json; charset=utf-8

{ 
 "PageIndex": 1, 
 "PageSize": 100, 
 "TotalCount": 346, 
 "TotalPageCount": 4, 
 "HasNextPage": true, 
 "HasPreviousPage": false, 
 "Items": [ 
  { 
   "ID": 1005343, 
   "IntegratorID": 1005001, 
   "ExternalID": "6241",
   .....
},
.....
]
}

Http Status Codes Responses & Messages

Status Message Description
200 - OK You get the list of objects Call was successful
404 - Bad request <Error>
   <Message>The request is invalid.</Message>
   <ModelState>
      .....
   </ModelState>
</Error>
You used the wrong parameter values. <ModelState> element will provide you the necessary details. Please correct the issues and try again.

 

Get associate

This method returns the details of one associate. You can use Gryphtech Associate ID or your own ExternalID

Call

GET integrator/{integrator id}/associate/{resource id}

Required parameters:

resource id
Gryphtech Associate ID or your own ExternalID can be used. To use ExternalID , prefix your id with "ext-", like this: ext-ExternalID
{ExternalID} can contain only numbers, non accented letters and characters "_", "-"

Example of call using Gryphtech Associate ID: integrator/1005001/associates/123
Example of call using your own ExternalID: integrator/1005001/associates/ext-abc_456

Request

GET http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates/ext-6241 HTTP/1.1 

Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk+", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 
Accept: application/xml; charset=utf-8

Response XML

HTTP/1.1 200 OK 
Content-Type: application/xml; charset=utf-8

<Associate>
  <AgentName>Al Haragely</AgentName>
  <Closer> </Closer>
  <CollectionsCertified>false</CollectionsCertified>
  <CreatedDate>2012-12-01T06:38:00</CreatedDate>
  <DateJoined>2011-04-21</DateJoined>
  <DateOfBirth>1980-01-01</DateOfBirth>
  <Email>qatest@gryphtech.com</Email>
  <ExternalID>6241</ExternalID>
  <FirstName>Al</FirstName>
  <Gender>1324</Gender>
  <ID>1005343001</ID>
  <IListCertified>false</IListCertified>
  <ImageURL>A_717a767a20314f3e862b7c97ef492153_iList.jpg</ImageURL>
  <IntegratorID>1005001</IntegratorID>
  <InternationalID>10486194</InternationalID>
  <IsSalesAssociate>true</IsSalesAssociate>
  <LastName>Haragely</LastName>
  <MainSpecialization>1311</MainSpecialization>
  <ModifiedDate>2014-11-27T07:55:00</ModifiedDate>
  <OfficeExternalID>6241</OfficeExternalID>
  <OfficeID>1005343</OfficeID>
  <Phone>666-666-6666</Phone>
  <RegionID>1005</RegionID>  
  <SalesLicenseNumber>CA BRE # 01417221</SalesLicenseNumber>
  <SucceedProgramMember>false</SucceedProgramMember>
  <Terminated>false</Terminated>
  <Title>1319</Title>
  <URLToPrivatePage>http://alharagely.californiahawaii.com</URLToPrivatePage>
</Associate>

Response JSON

HTTP/1.1 200 OK 
Content-Type: application/json; charset=utf-8

{
  "ID": 1005343001,
  "ExternalID": "6241", 
  "IntegratorID": 1005001,
  "CreatedDate": "2012-12-01T06:38:00",
  "ModifiedDate": "2014-11-27T07:55:00",
  "Terminated": false,
  "OfficeID": 1005343, 
  "OfficeExternalID": "6241", 
  "RegionID": 1005,
  "InternationalID": "10486194",
  "FirstName": "Al", 
  "LastName": "Haragely",
  "AgentName": "Al Haragely",
  "Email": "qatest@gryphtech.com", 
  "Phone": "666-666-6666", 
  "URLToPrivatePage": "http://alharagely.californiahawaii.com", 
  "Closer": "",
  "ImageURL": "A_717a767a20314f3e862b7c97ef492153_iList.jpg",
  "IsSalesAssociate": true,
  "MainSpecialization": 1311,
  "Gender": 1324,
  "DateOfBirth": "1980-01-01",
  "SalesLicenseNumber": "CA BRE # 01417221", 
  "DateJoined": "2011-04-21",
  "Title": 1319,
  "SucceedProgramMember": false, 
  "CollectionsCertified": false,
  "IListCertified": false 
}

Http Status Codes Responses & Messages

Status Message Description
200 - OK You get the resource object Call was successful
404 - Not Found   Resource was not found for the specified ID

 

Create associate

This method allows you to create a new office.

Following values from your object model are ignored:

Call

POST integrator/{integrator id}/associates

Request XML

In XML, elements order is important. The order is alphabetical.

POST http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates HTTP/1.1 
Accept: application/xml; charset=utf-8 
Content-Type: application/xml; charset=utf-8 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 

<Associate>
  <AgentName>Al Haragely</AgentName>
  <Closer> </Closer>
  <CollectionsCertified>false</CollectionsCertified>
  <CreatedDate>2012-12-01T06:38:00</CreatedDate>
  <DateJoined>2011-04-21</DateJoined>
  <DateOfBirth>1980-01-01</DateOfBirth>
  <Email>qatest@gryphtech.com</Email>
  <ExternalID>180547</ExternalID>
  <FirstName>Al</FirstName>
  <Gender>1324</Gender>
  <ID>1005343001</ID>
  <IListCertified>false</IListCertified>
  <ImageURL>A_717a767a20314f3e862b7c97ef492153_iList.jpg</ImageURL>
  <IntegratorID>1005001</IntegratorID>
  <InternationalID>10486194</InternationalID>
  <IsSalesAssociate>true</IsSalesAssociate>
  <LastName>Haragely</LastName>
  <MainSpecialization>1311</MainSpecialization>
  <ModifiedDate>2014-11-27T07:55:00</ModifiedDate>
  <OfficeExternalID>6241</OfficeExternalID>
  <OfficeID>1005343</OfficeID>
  <Phone>666-666-6666</Phone>
  <RegionID>1005</RegionID>  
  <SalesLicenseNumber>CA BRE # 01417221</SalesLicenseNumber>
  <SucceedProgramMember>false</SucceedProgramMember>
  <Terminated>false</Terminated>
  <Title>1319</Title>
  <URLToPrivatePage>http://alharagely.californiahawaii.com</URLToPrivatePage>
</Associate>

Response XML

HTTP/1.1 201 Created 
Content-Type: application/xml; charset=utf-8 
Location: http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates/ext-6242_Test1 

... created Associate object with new ID ...

Request JSON

In JSON, element order does not matter.

POST http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates HTTP/1.1 
Accept: application/json; charset=utf-8 
Content-Type: application/json; charset=utf-8 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 

{
  "AgentName": "Al Haragely",
  "ID": 1005343001,
  "ExternalID": "180547", 
  "IntegratorID": 1005001,
  "CreatedDate": "2012-12-01T06:38:00",
  "ModifiedDate": "2014-11-27T07:55:00",
  "Terminated": false,
  "OfficeID": 1005343, 
  "OfficeExternalID": "6241", 
  "RegionID": 1005,
  "InternationalID": "10486194",
  "FirstName": "Al", 
  "LastName": "Haragely",
  "Email": "qatest@gryphtech.com", 
  "Phone": "666-666-6666", 
  "URLToPrivatePage": "http://alharagely.californiahawaii.com", 
  "Closer": "",
  "ImageURL": "A_717a767a20314f3e862b7c97ef492153_iList.jpg",
  "IsSalesAssociate": true,
  "MainSpecialization": 1311,
  "Gender": 1324,
  "DateOfBirth": "1980-01-01",
  "SalesLicenseNumber": "CA BRE # 01417221", 
  "DateJoined": "2011-04-21",
  "Title": 1319,
  "SucceedProgramMember": false, 
  "CollectionsCertified": false,
  "IListCertified": false 
}

Response JSON

HTTP/1.1 201 Created 
Content-Type: application/json; charset=utf-8 
Location: http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates/ext-6242_Test1

... created Associate object with new ID ...

Http Status Codes Responses & Messages

Status Message Description
201 - Created You get the created resource object Call was successful
400 - Bad request <Error>
   <Message>
      New resource validation failure. Resource was not created.
   </Message>
   <MessageDetail>
      .....
   </MessageDetail>
</Error>
<MessageDetail> element will contain the reasons why validation failed. Correct the issues and try again.
400 - Bad request <Error>
   <Message>The request is invalid.</Message>
   <ModelState>
      <requestModel>.....</requestModel>
   </ModelState>
</Error>
The object you tried to upload does not match the expected object definition. <ModelState> element will explain where your object do not match the expected model. Please correct the raised issues and try again.
409 - Conflict <Error>
 &nbs     A resource with ExternalID {0} already exists!
   </Message>sp;  </Message>
</Error>
Every Associate has to have an unique ExternalID. You cannot have 2 associates with the same ExternalID.
409 - Conflict <Error>
   <Message>
     Resource was not created. Please contact Gryphtech support
   </Message>
</Error>
Please contact Gryphtech support
400 - Bad request <Error>
   &     Invalid Office ExternalID {0}
   </Message>sp;  </Message>
   <MessageDetail>
      You requested to create an associate for an office that does not exist. Please make sure you create the office first.
   </MessageDetail&g</Error>
Office ExternalID passed to create the associate does not exist. Please make sure that the office exists already in our database and pass valid office ExternalID.

 

Update associate

This method allows you to update an existing resource.

You can make a full or a partial update. Partial update means that you do not have to provide the entire object, just the object properties that changed. Both PUT and PATCH methods are equivalent,  no matter you choose full or partial update.

Following values from your object model are ignored:

Call

Full update

PUT integrator/{integrator id}/associates/{resource id}/associates/{resource id}

Partial update

PATCH integrator/{integrator id}/associates/{resource id}

Required parameters:

resource id
See Get Associate method for parameter description

Request XML

This is an example for a partial update. For a full update, the entire object must be present.

PUT http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates HTTP/1.1 
Accept: application/xml; charset=utf-8 cation/xml; charset=utf-8 
Content-Type: application/xml; charset=utf-8 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 

<Associate>
  <CollectionsCertified>false</CollectionsCertified>
</Associate>

Request JSON

This is an example for a partial update. For a full update, the entire object must be present.

PUT http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates HTTP/1.1 
Accept: application/json; charset=utf-8 ation/json; charset=utf-8 
Content-Type: application/json; charset=utf-8 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 

{ 
  "CollectionCertified": false
}

Response

If the update was successful you will get the resource object back with the updated values. See Get Associate method for XML and JSON responses.

Http Status Codes Responses & Messages

Status Message Description
200 - OK You get the updated resource object Call was successful
404 - Not Found <Error>
 &nbs      Requested resource cannot be found for the specified Associate ID. Requested operation was not performed
   </Message>sp;  </Message>
   <MessageDetail>
      Please make sure that a resource with the requested ID actually exist before making the call
 </MessageDetail>
</Error>
Resource was not found for the specified resource ID
400 - Bad Request <Error>
   <Message>
      New resource validation failure. Resource was not created.
   </Message>
   <MessageDetail>
      .....
   </MessageDetail>
</Error>
<MessageDetail> element will contain the reasons why validation failed. Correct the raised issues and try again.
400 - Bad Request <Error>
   <Message>The request is invalid.</Message>
   <ModelState>
      <requestModel>.....</requestModel>
   </ModelState>
</Error>
The object you tried to upload does not match the expected object definition. <ModelState> element will explain where your object do not match the expected model. Please correct the issues and try again.

Terminate associate

Terminate associaTo terminate an associate you must use the Update Associate method. Set Terminated property of the associate to true and you are done.

Please note that when an associate is terminated, the associate and all its properties are no longer visible on the public website even if there are still active properties.e still active properties.

Http Status Codes Responses & Messages

Please see Update Associate


Cancel all properties belonging to an associate

This method cancel all properties belonging to the associate identified with the {resource id}. Listing Status of the properties will be set to Cancelled.

Please note that as a result of this method call, all properties belonging to the associate will no longer be visible on the public website.ble on the public website.

Call

PUT integrator/{integrator id}/associates/{resource id}/cancelalllistings

Required parameters:

resource id
See Get Associate method for parameter description

Request

PUT http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates/12345/cancelalllistings HTTP/1.1 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 

Response

HTTP/1.1 204 No Content

Http Status Codes Responses & Messages

Status Message Description
204 - No Content   Call was successful
404 - Not Found <Error>
   <Message>
     Requested resource cannot be found. Requested operation was not performed
   </Message>
</Error>
Resource was not found for the specified ID. As a result, the requested operation could not be performed.


Remove associate image

This method will remove the associate image.

As a result of this call, on the public website, the associate image will be replaced by a default image.

Call

PUT integrator/{integrator id}/associates/{resource id}/removeimage

Required parameters:

resource id
See Get Associate method for parameter description

Request

PUT http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates/12345/removeimage HTTP/1.1 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619" 

Response JSON & XML

HTTP/1.1 204 No Content

Http Status Codes Responses & Messages

Status Status MessDescription
204 - No Content   Call was successful
404 - Not Found <Error>
   <Message>
     Requested resource cannot be found. Requested operation was not performed
   </Message>
</Error>
Resource was not found for the specified ID. As a result, the requested operation could not be performed.


Transfer associate to another office

This method will transfer associate to another office. This method is to be used if the Associate maintained in your system its ExternalID and properties portfolio while it was transferred to another office.

As a result of this call, all the Associate information as well as all the associated properties will be transferred to the new office. The Associate will get a new ID from our system but its ExternalID will remain the same.

The receiving office must already exist in our database when you make this call.

Call

PUT integrator/{integrator id}/associates/{resource id}/TransferToOffice/{office id}

Required parameters:

resource id
This is the Associate ID or ExtrenalID
office id
This is the id of the office that will receive the transfer. This can be Office ID or ExternalID

Note: Please use same type of ID for both Office and Associate. For instance, if you used ExternalID for Associate, use ExternalID for Office too.

Request

PUT http://rexapi.gryphtech.com/api/v1/integrator/1005001/associates/12345/TransferToOffice/6658 HTTP/1.1 
Authorization: OAUTH oauth_token="pfl4PLrrHKChIRoDS2O9Wfoyr1yjKgbEjCxk", api_key="10D35802-C92A-42B3-88FC-A4489A3CD619"

Response JSON & XML

HTTP/1.1 204 No Content

Http Status Codes Responses & Messages

Status Message Description
204 - No Content   Call was successful
404 - Not Found <Error>
   <Message>
      Requested Associate resource cannot be found. Requested operation was not performed
   </Message>
  <MessageDetail>
      Please make sure that a resource with the requested ID actually exist before making the call
   </MessageDetail>
</Error>
 
  <Error>
   <Message>
      Requested Office resource that will receive the Associate Transfer could not be found. Requested operation was not performed
   </Message>
  <MessageDetail>
      Please make sure that the office receiving the transfer already exist before transferring the associate.
   </MessageDetail>
</Error>
 
400 - Bad Request <Error>
   <Message>
     Please use resource ID or ExternalID for both office and associate.
Do not mix Office ID with Associate ExternalID and the other way around.   </Message>
</Error>
Use correct resource ID or ExternalID for both office and associate.
Do not mix Office ID with Associate ExternalID or the other way around.
400 - Bad Request <Error>
   <Message>
      The office to receive the associate must be other than the office the associate is currently in. Please select a different office.
   </Message>
</Error>