Archive

Archive for the ‘API General’ Category

Gateway Controls

November 26, 2018 Leave a comment

Store API Gateway Controls

On July 1, 2018, Yardi implemented API gateway controls that will help protect our cloud environment and ensure a positive user experience for clients and integration partners alike.

The gateway controls enforce usage limitations that help prevent any single user, especially consumers of the Store web services API, from adversely affecting other customers in the Yardi Store Cloud. (Please note, these controls only affect the Yardi Store products and services, and do not apply to other Yardi products and services such as Voyager.)

While the gateway controls allow Yardi to fine-tune the usage of the service API to the needs our integration partners and our common clients, certain limits were enacted and will be enforced for all users. The gateway policies will set limits on:

  • Maximum concurrent requests per Service User.*
  • Maximum throughput of requests per rolling 60 minute window, per Service User.*
  • Maximum throughput of requests per rolling 24 hour window, per Service User.*
  • Ability to restrict/shun any Service User* and/or IP address that is having adverse impact on the Store environment, regardless of the policy maximums. To ensure quick response to
    severely impactful events, notice may not be provided before action is taken to restrict or shun requests, but we will make reasonable effort to contact affected users as quickly as
    possible.
  • Additional controls and policies will likely be added by July 1, 2018. More details will be provided before this occurs.

* Service users are organization/client based, so these limits are essentially per org, per interface consumer.

Integration partners that work within the “Basic” services tier will have further constraints as defined in their service agreements.

It is not anticipated that any changes will need to be made to integrations, service endpoints or URLs, nothing from a consumer standpoint will change once these gateway controls are in place.

If you have questions or concerns about the changes, please reach out to:

  • Rett Thorpe
    rett.thorpe@yardi.com
  • Steve Hall
    steve.hall@yardi.com
  • Your account manager or the Yardi Storage Helpdesk
    801.303.1333
    Yardi ticketing system
Categories: API General

SWS GetSiteSMSFromAddr Method

January 18, 2018 Leave a comment

This method is used to get the current “SMS From Address” being used for the specified site.

Parameters

Name DataType Is Required
SiteID Long Required
Description The site’s ID number. This can be found using the GetSiteList method.

Returned Parameters

Name DataType
Response String
Description “SUCCESS” indicates that the query was successful, or “FAILURE” if not.
ID String
Description The site’s ID number. This echoes the requested site ID.
STATUS String
Description The current SMS From Address.

Example

As with every method we need to pass in credentials. We do this with the LookupUser request object.

We’ll assume you’ve got a web reference, let’s name it SWS, in your Visual Studio project. At this point we only need to create our SiteID request object and a GetUpdateSMS response 2 object. We can define and create those objects like this:

// Create the request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.SiteID_Request siteID_rqst = new SWS.SiteID_Request();
SWS.GetUpdateSMS_Response2 response = new SWS.GetUpdateSMS_Response2 ();

Now we set up the parameters for our request.

// SiteID Request- this is a required parameter
siteID_rqst.SiteID = 123456;

We can then call the method and pass across the login object and the request objects to get our resultant dataset. It’s a good idea to do this in a Try Catch block.

// Call the method that will load the response object
try{  response = service.GetSiteSMSFromAddr (user_rqst, siteID_rqst);}
catch (Exception ex){  MessageBox.Show(ex.Message);}

Note that if something goes wrong the service will respond with an exception. You’ll want to take a look at that message returned in that exception so it can be debugged.

For a full list of methods see SWS Methods.

Categories: API General, Letters, SMS

SWS GetOrgSMSStatus Method

January 18, 2018 Leave a comment

This method is used to get the current SMS Messaging Status for the organization.

Parameters

Name DataType Is Required
None
Description This is based on your credentials in LookUpUser_Request, so does not require any additional parameters.

Returned Parameters

Name DataType
Response String
Description “SUCCESS” indicates that the query was successful, or “FAILURE” if not.
ID String
Description The organization’s ID number. This echoes the ID of the organization for which the credentials apply.
STATUS String
Description Indicates the current SMS messaging status.
Available values:

  • Do not send SMS
  • Require permission
  • Send SMS

Example

As with every method we need to pass in credentials. We do this with the LookupUser request object.

We’ll assume you’ve got a web reference, let’s name it SWS, in your Visual Studio project. At this point we only need to create a GetUpdateSMS response 2 object.

// Create the request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.GetUpdateSMS_Response2 response = new SWS.GetUpdateSMS_Response2 ();

We can then call the method and pass across the login object and the request objects to get our resultant dataset. It’s a good idea to do this in a Try Catch block.

// Call the method that will load the response object
try{response = service.GetOrgSMSStatus (user_rqst);}
catch (Exception ex){  MessageBox.Show(ex.Message);}

Note that if something goes wrong the service will respond with an exception. You’ll want to take a look at that message returned in that exception so it can be debugged.

For a full list of methods see SWS Methods.

Categories: API General, Letters, SMS

SWS PhoneSMSBlacklistStatus Method

January 18, 2018 Leave a comment

This call may be used to GET or SET the SMS blacklist status for a PhoneID record for specified SiteID. PhoneID must be supplied in the call. Only records having RENTAL_STATUS of “CURRENT_OCCUPIED”, “DELINQUENT”, “IN_PROCESS”, “RESERVED” or “SOFT_RESERVED” will be reported or affected.

Parameters

Name DataType Is Required
SiteID Long Required
Description The site’s ID number. This can be found using the GetSiteList method.
Get_Set String Optional
Description Accepted values are “GET” or “SET”, with “GET” being the default value.
RentalID Long Required*
Description The rental item’s ID number. This is returned when using the MakeReservation method or can be searched for using the SearchBy method.
* Either the RentalID or PhoneID is required.
PhoneID Long Required*
Description The ID number of the phone. This can be found using the GetContacts method.
* Either the RentalID or PhoneID is required.
Status String Required*
Description Indicates if you are enabling SMS on an account (“SET”) or just getting the current status (“GET”).
* This value is required only for “SET”, otherwise it is ignored.

Returned Parameters

Name DataType
Response String
Description “SUCCESS” indicates that the query was successful, or “FAILURE” if not.
PHONE_ID Long
Description The ID number of the rental.
STATUS String
Description The current SMS enabled status of the Rental/Phone combination. If using “GET”, this is the current status. If using “SET”, returns the status you just added.

Example

As with every method we need to pass in credentials. We do this with the LookupUser request object.

We’ll assume you’ve got a web reference, let’s name it SWS, in your Visual Studio project. At this point we need to create our objects. We’ll need the standard service object, a SiteID request object, an GetUpdatePhoneID request object, and a GetUpdateSMS response 2 object. We can define and create those objects like this:

// Create the request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.SiteID_Request siteID_rqst = new SWS.SiteID_Request();
SWS.GetUpdatePhoneID_Request SMSphone_rqst = new SWS.GetUpdatePhoneID_Request();
SWS.GetUpdateSMS_Response2 response = new SWS.GetUpdateSMS_Response2 ();

Now we set up the parameters for our request.

// SiteID Request- this is a required parameter
siteID_rqst.SiteID = 123456;
// Get_Set Request
// this is an optional parameter, “GET” is the default value
SMSphone.Get_Set = “GET”
// PhoneID Request 
// this is a required parameter
SMSphone_rqst.PhoneIDs(0).PhoneID = 345678;

Finally we can call the method and pass across the login object and the request objects to get our resultant dataset. It’s a good idea to do this in a Try Catch block.

// Call the method that will load the response object
try{response = service.PhoneSMSBlacklistStatus(user_rqst, siteID_rqst, SMSphone_rqst);}
catch (Exception ex){MessageBox.Show(ex.Message);}

 

Note that if something goes wrong the service will respond with an exception. You’ll want to take a look at that message returned in that exception so it can be debugged.

For a full list of methods see SWS Methods.

Categories: API General, Letters, SMS