Formal Definition and Version
Formal definition for Web service: wsca
Version: 2.0
Using the Access ACS Web Services API
- Add a reference to https://secure.accessacs.com/acscfwsv2/wsca.asmx
- For these calls, you will need to use your secid to call getLoginToken and return a token for use with other function calls. Note that this token will time out after one hour of non-use.
- Calls made into the various functions return Microsoft datasets.
- If an error occurs, an exception displays. For example, if an invalid token or a time out occurs an error displays.
- Calls can only be made over https. Standard http calls are not recognized.
On this page you will find information about the following |
|---|
#Creating a Token |
Creating a Token
- getLoginToken — **This is the first call into the Web services. The return value is used as the token in all other calls. This requires your secid and ACS site id. Please note, if your siteid has a leading 0 or W, do not include it when passing in the site id value.
Login
- validateAccessACSLogin — validateAccessACSLogin(string token, string username, string password). This calls validates entry for an individual user in to our system. This is how you would validate the username and password if you are trying to use a universal login for a 3rd party application.
Changing Profile Data/ Sending Data Back to Access ACS
Please note that all data changes are approved as part of the standard change request system and not automatically applied to the database. |
- peAddIndividual — Add an individual to the change request log. Member Status = member|prospect.
- peAddUpdateAddress — Add and edit street addresses. To add an address, pass in -1 for the addressid. To update an address, pass in a valid addressid. For a family address, set sharedflag = Y.
- peAddUpdateEmailAddress — Add and edit email addresses. To add an e-mail address, pass in -1. To update an e-mail address, pass in a valid emailid.
- peAddUpdatePhone — Add and edit phone numbers. To add a phone number, pass in -1. To update a phone number, pass in a valid phoneid.
- peDeleteEmailAddress — Delete email addresses. Pass in a valid emailid to delete.
- peUpdateNewsletterFlag — Update of the newsletter flag. Valid flags are 0=>None, 1=>IndivMail, 2=>IndivEmail, 3=>IndivBoth, 4=>FamMail, 5=>FamEmail, 6=>FamBoth.
- peUpdateOpenCategory — Update an open description. This requires the id of the description, not the text. Pass an id of 0 for null.
- peUpdateOpenDate — Update an open date (1 - 6) to a new date. The time piece of the date is ignored (ie, set to 00:00:00 pm). Pass in the date 12/31/1899 to set the date to null.
- peUpdateOpenField — Update an open field. Field text is limited to 20 characters. Pass in the text "null" (lowercase) to set the field to null.
Activities
- grAddPersonToActivity — Add an individual into an activity list.
- grGetActivityRoster — Retrieves who is in the roster for a category within an activity. Input the token, categoryid, and effectivedate. The date is needed to obtain the roster on a particular day due to the changes in rosters and the available history.
- grGetCategoryElements — Retrieves the activity elements available within a group. Valid element numbers are 1-4.
- grGetGroupCategories — Retrieves the master activity categories.
- grGetMasterGroups — Retrieves the master groups under activities.
Class Calls
- clsAddPersonToClass — Adds an individual to the class list.
- clsGetClassClasses — Retrieves a listing of classes under a department.
- clsGetClassCodes — Retrieves the individual class codes.
- clsGetClassDepartments — Retrieves a listing of departments under a division.
- clsGetClassDivisions — Retrieves the topmost class divisions.
- clsGetClassRoster — Retrieves the roster for a class. Input the token, groupid, and effectivedate. The date is needed to obtain the roster on a particular day due to the changes in rosters and the available history.
- clsGetClassStatuses — Retrieves the status of all classes. For status_descr_1 pass in 1. For status_descr_2 pass in 2. For neither, pass in -1.
- clsGetMasterClasses — Retrieves the group id and descriptions for the master classes.
- clsGetPositions — Retrieves the positions within a class.
Event Registration Calls
The event registration calls can be used to pull information about events such as contacts info, sub-events info, registration periods, rules, and costs. Use these calls to pull information to show event data dynamically on your website.
- getEventData— Dataset getEventData (string token, int eventid, DateTime, startDate). Returns event calendars.
- Format the data as <startDate>2010-08-15T00:00:00</startDate><stopDate>2010-08-21T00:00:00</stopDate>
GetEventRegistrationById — Retrieves event registration by solutioneventid. You can pass in an array of solution ids. This id is what ties an Event Registration to a Facility Scheduler event. The solutioneventid can be retrieved from the getBookedResourcescall.

The getBookedResources call is part of the Event API.
- getEventRegistrationByDate — Retrieves all event registrations by passing in a date range.
- GetEventSections — Retrieves a list of events and related sub events.
- GetEventRegistrationPricing — Retrieves pricing for the list of events and related sub events.
- getEventRegistrationRules — Retrieves rules for each section of the event.
People Data
- getAccessUserList — Complete user listing of individuals with AccessACSLogins.
- getAccessUserListFiltered — Filtered list (by username) of individuals with AccessACSLogins.
- getPeopleList — Returns a complete list of people information. For example, family, phone, address, email, and linking information.
Pictures
- getIndividualPictureNamebyID — Returns the picture name the matches the individual id.
- getFamilyPictureNamebyID — Returns the picture name that matches the family id.
Searching/Filtering for Individuals
- getIndvData — Returns the one individual who matches the given id.
- getPeopleListbyAddress — Returns individuals that match based on any combination of street, city, state and ZIP code.
- getPeopleListbyAddress_xml — Returns individuals that match based on a combination of street, city, state, and Zip code. Straight XML returned.
- getPeopleListbyFamID — Returns individuals that match based on Familyid.
- getPeopleListbyName — Returns individuals that match based on Last Name and/or First Name.
- getPeopleListbyName_xml — Returns individuals that match based on Last Name and/or First Name. Straight XML returned.
- getPeopleListbyNamewphoneaddress — Returns individuals that match based on Last Name and/or First Name.
- getPeopleListbyNamewphoneaddressFiltered — Returns individuals that match based on Last Name and/or First Name. Set search flag to True to search both fname and lname as one. Populate fieldlist with fields to retrieve. A blank fieldlist returns all.
- getPeopleListbyPhoneNumber — Returns individuals that match based on any part of a phone number.
- getPersonbyID — Returns individuals that match based on any part of a phone number.
Serving
The Serving Api calls are divided into two parts:
- serving opportunities
attributes for the serving position

Wording Changes Some wording changes have been made in Access ACS since the infostructure was originally built out.
- Need = Opportunity
- Volunteer = Serving.
For frequency, -1 = one time, 0 = weekly, 1 = 2 weeks, 2 = monthly, 3 = two months.
The following Serving API calls pull Serving Positions and Opportunities:
- vmGetServOpportunities — Pulls a list of serving opportunities. Pass in desired fields and ability to filter on OpportunityID. Fields are Opportunity ID, Opportunity Name, Opportunity Description, Opportunity Address Line 1, Opportunity Address Line 2, Opportunity City, Opportunity State, Opportunity ZIP, Opportunity Contact, Opportunity Contact Method, Opportunity Close Date, Opportunity flag to allow members to volunteer for this opportunity, and Opportunity flag for Childcare Provided
- vmGetPositions — Pulls a list of all positions from Small Groups and Volunteers. Ability to filter on VolNeeds. Position ID, Opportunity Position Name, Opportunity Position Description, Active, Leadership, Small Group, VolNeeds.
- vmGetPositionOpportunities — Displays the link between Position Name and Serving Opportunities. It also provides information about when the position serving times are needed. PostionNeedID, NeedID, PositionID, Opportunity Alternate Position Name, Opportunity Position Number Requested, Opportunity Position Urgent Flag, Opportunity Position Sampling Flag, Opportunity Position Featured Flag, Opportunity Position Start Date, Opportunity Position End Date, Opportunity Position Frequency, Opportunity Position Days of the week, Opportunity Position One Day per Month, Opportunity Position Week of the Month, Opportunity Position Weekday of Month
The following Serving API calls pull attribute information for Serving Positions:
- vmGetCategoryName – This pulls the list of Serving Categories. CatID, CatName
- vmGetCategoryNameAttributes — This pulls the list of Serving attributes. Attribute ID, Attribute Category ID, Attribute Name, Attribute Description, Attribute Active
- vmGetAttributesforPosition — This shows the linkage between Serving Category Name and Serving Attributes. Position ID, Attribute ID
Small Groups
These calls can be used in conjunction with each other to retrieve group information and rosters. To create your own custom reports or to create your own small group Web pages, use these calls.
- sgGetCatNames — Pulls small groups category names and category IDs.
- sgGetCategoryPhraseLists — Pulls a list of items entered in to each of the small group categories. To view each item list for each category, pass in 1 - 5.
- sgGetGroupKeywords — Pulls a list of keywords entered for a particular group.
- sgGetGroupList — Pulls a list of all small groups. To view a full list, pass in * for fieldlist and -1 for groupids.
- sgGetMasterKeywordList — Pulls a list of all of the key phrases entered in to small groups.
- sgGetMeetinginfo - With the update of Small Groups in August 2011, this makes it easier to obtain information about the Small Group details.
- sgGetMeetingTimes — Small Group meeting times. Pass in a groupid of -1 for all groups.
- sgGetRoster — Pulls the list of individuals in a small group roster. Pass in a groupid value from the sgGetGroupList call.
Statistical Data
- getContribDataStats - DataSet getContribDataStats(string token, DateTime fromdate, DateTime todate) Returns contribution data on a weekly basis between certain dates
- getStatContribYTD - DataSet getStatContribYTD(string token, DateTime dt) Returns contribution data for ytd regardless of month and day entered.
- getStatAges — DataSet getStatAges(string token). Returns age breakdown.
- getStatAttendanceByDate — DataSet getStatAttendanceByDate(string token, int groupid, DateTime, attenddate). Returns statistical attendance information broken down by date.
- getStatAttendanceGroupsList — DataSet getStatAttendanceGroupsList(string token). Returns statistical attendance information broken down by group.
- getStatContribWeekly — Deprecated as of May 1, 2011. Use instead getContribDataStats & getStatContribYTD.
- getStatContribWeeklyDate — Deprecated as of May 1, 2011. Use instead getContribDataStats & getStatContribYTD.
- getStatData — Returns user defined data values. 1=recordcount; 2=member status; 3=marital status; 4=family position; 5=joined how; 6+=user defined.
- getStatFamilyPosition — DataSet getStatFamilyPosition(string token) Statistical breakdown of family positions.
- getStatJoinedHow — DataSet getStatJoinedHow(string token). Statistical breakdown of how people have joined.
- getStatMaritalStatus — DataSet getStatMaritalStatus(string token). Statistical breakdown of marital status.
- getStatMemberStats — DataSet getStatMemberStats(string token). Statistical breakdown of members.
- getStatMemberStatus — DataSet getStatMemberStatus(string token). Statistical breakdown of member status.
- getStatStaticTypes — DataSet getStatStaticTypes(string token). Returns statistical attendance information broken down by pre-defined static types within the system.
Volunteer Management
- vmGetAttributesforPosition — Pulls vol mgt category name attribute list.
- vmGetCategoryNameAttributes — Pulls vol mgt category name attribute list.
- vmGetCategoryNames — Pulls vol mgt category name list.
- vmGetPositionOpportunities — Pulls vol mgt position opportunity list. Pass a valid position and or opportunity id or -1 for all position/opportunity combinations.
- vmGetPositions — Pulls vol mgt position list.
- vmGetServOpportunities — Pulls vol mgt opportunity list. Pass * as s0 for all fields. Pass -1 as s0 for all records.
Others
| Note An "open" field is a User Defined Field from the People Suite. |
- getCommentTypes — Returns the comment types. 0 for all.
- getFamilyComments — Returns all comments for the comment type. Pass in -1 for all comments.
- getGroupPositions
- getGroupsEvents
- getIndvComments — Returns all comments for the comment type. Pass in -1 for all comments.
- getListValues — List Values. 1=title; 2=marital_status; 3=member_status; 4=family_position; 5=joined_how; 6=record_type; 7=email_type; 8=phone_type; 9=address_type.
- getPEOpenFieldCategories — Returns the categories for the open Field. Fieldid is the fieldid from PEOpenFieldLabels. 0 for all.
- getPEOpenFieldLabels — Retrieves the labels for open Fields. Pass in 0 for all or pass specific id of field.
- getseProfiles — Security Profile Listing.
- peGetAllOpenListElements — Retrieves a list of all open drop-down list elements.
- peGetOpenCategoryDescriptions — Retrieve all open category field ids, names, and descriptions.
- peGetOpenDateDescriptions — Retrieve all open date field ids, names, and descriptions.
- peGetOpenFieldDescriptions — Retrieve all open field field ids, names, and descriptions.
- peGetOpenListElements — Retrieve open category drop-down list elements for a specific Category.
3 Comments
Hide/Show CommentsMar 08, 2010
Chris Le
Step 3 in the documentation says "... to call getUserToken." It actually should say " ... to call getLoginToken".
May 18, 2010
Rebecca Moore
Fixed. . .finally.
Mar 23, 2012
Ron Hickson
Wiki says that getEventData returns event calendars but an eventid is required...?