finalsite API

The finalsite API is a REST-based web service which provides access to the following data in the finalsite CMS

In addition, the API provides functionality to login to the API itself and to authenticate users

The API supports Create, Read, Update and Delete functionality if the API user's permissions allow it and if the web service endpoint itself support that behavior.

The finalsite API relies on a number of conventions and assumptions to make the software, documentation, examples, and response information as consistent and accurate as possible. These API conventions are outlined here. Please read this section carefully as this will greatly help you in implementing the finalsite API.

To best use the finalsite API you should be familiar with the back-end modules and tools of the finalsite CMS, such Constituent Manager and Group Manager.

HTTP Methods

The finalsite API supports the following three HTTP Methods. These methods are sometimes referred to as verbs or CGI Methods.

  • GET
  • POST
  • DELETE

PUT is not supported.

As you will see throughout the documentation, the HTTP Method drives the 'action' and there is a logical correspondence between the action you are trying to carry out and the Method you will use to do so. For example, GET is used to fetch data from the finalsite API, whereas a POST can be used to send data into the API. The only exceptions to this rule are login endpoints: for reasons of security, sensitive data is POSTed and thus the Method required is POST.

NOTE: All requests to the API must include a User-Agent header set (enforced as of 8/1/2018)

HTTP Basic Authentication

The finalsite API, like other REST-based web services, uses HTTP Basic Authentication. All web service endpoints require a username and password and these must be sent as an HTTP Authorization header, formatted according to the specification. For added security, we have extended the HTTP Basic Authentication model as follows:

  • All endpoints require the generic username apitoken or apidevicetoken as the username and the corresponding ApiToken or ApiDeviceToken as the password
    1. A valid token is obtained from the ApiLogin or ApiDeviceLogin endpoints
    2. The token is used as shown in this example (using cURL)
      curl -u apitoken:f030e4cd52292f7d921f4d696f7573d60202_66 ...
  • The only exception to rule #1, above, are the login endpoints: ApiLogin and ApiDeviceLogin.
    1. ApiLogin requires the username and password of an admin with API access rights, as well as an ApiEncryptedKey. The API Encrypted Key is a SHA-256 hash of the concatenation of the username and API Shared Key. The API Shared Key is configured in the API Module Setup in finalsite.
    2. ApiDeviceLogin allows anonymous login as well as a (Constituent) username and password, in addition to a number of other security parameters

Return Formats

By default, the API returns all data as XML. Adding ReturnFormat=json to any of your requests will return the data as JSON instead.

NOTE: Specifying ReturnFormat=json means XML data validation is not applied to the data returned by the API. See also Data Validation, below

Parameters

A number of parameters that can be passed into our API are lists (lists of Constituent ImportIDs, for example), and have the format <paramname>_List. All lists are to be comma-separated and we recommend that they be URL encoded for maximum compatibility.

Data Validation

By default, all data passed into the API and returned from the API is XML-validated. However, since data currently in a finalsite CMS may not be fully Schema-compliant at all times (for example, a Degree Year may be stored as '90 instead of 1990), you have the option of disabling validation for data that is returned from the API, by using the ValidateResult=0 parameter. Data that is POSTed to the API must always be valid according to the finalsite XML Schema. Please note that the ValidateResult parameter is available everywhere and is not documented on each of the endpoint documentation pages.

NOTE: XML data validation is NOT applied to data returned by the API if ReturnFormat=json is used.

CREATE/READ/UPDATE/DELETE (CRUD) behavior

At object level (e.g. Constituent, Group, Household, and so on):

  • Objects uploaded (POSTed) to the API are uniquely identified by ImportID
  • When testing for the existence of an object, the API will check both ImportID and ImportID2
  • For any object, if it does not exist it is created
  • For any object, if it does exist it is updated
  • Read and Delete operations are carried out with the methods created for that purpose (GET and DELETE, respectively)

Within object XML data all elements except the ImportID are optional although element order is enforced (see the data structure for each object for more information).

  • The presence of an XML element with data will cause that field to be updated in the database if the XML data does not match the field data currently in finalsite
  • The presence of an element without data (ie an empty element) will cause that field to be cleared in the database
  • The absence of an element means that field is not modified in the database in any way
  • Empty date elements (BirthDate, DateEnrolled) must have the xsi:nil attribute set to true: <BirthDate xsi:nil="true"/>

Debug mode

The finalsite API provides the ability to run in 'debug mode'. Using this option instructs the API to return more detailed information about what is happening (or, more likely, what is going wrong!). You can enable this option by using the by using the DebugMode=1 parameter. Please note that the DebugMode parameter is available everywhere and is not documented on each of the endpoint documentation pages.

Examples

All examples use cURL, a command-line utility for getting or sending data using URL syntax and methods. We use the following cURL command-line options in our examples:

  1. -u username:password OR -u apitoken:password (see HTTP Basic Authentication, above): the -u adds the HTTP Authorization header
  2. -d "paramname=paramvalue": -d POSTs the listed key/values
  3. -F "paramname=<filename": in situations where an XML object needs to be uploaded (POSTed), the -F flag reads the file from the filesystem and loads the content into the specified HTTP POST parameter
  4. GET and DELETE methods append the request parameters at the end of the URL, URL-encoded.

Other usefule cURL command line option are:

  1. -i: Using -i displays the HTTP Response Headers.
  2. -k: Ignored SSL certificate verification. This will allow you to connect over https without having to have an up-to-date certificate store used by cURL

For more information consult the cURL man pages on your system or use Google.

Please also note the following conventions used throughout our examples:

  1. For reasons of clarity, all POST and DELETE requests only operate on one object (e.g a Constituent or a Group). In real-life situations you may carry out multiple DELETEs or POSTs at once (note that for POST requests the data will be inside the XML object).
  2. All examples show a successful operation. Refer to the Error Codes tab for details on operations that fail.

finalsite API: XML Schema

Table of Contents

top

Schema Document Properties

Target Namespace http://www.finalsite.com/apidata/v1.0
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations have no namespace.
  • By default, local attribute declarations have no namespace.

Declared Namespaces

Prefix Namespace
xs http://www.w3.org/2001/XMLSchema
tns http://www.finalsite.com/apidata/v1.0
xml http://www.w3.org/XML/1998/namespace
Schema Component Representation
<xs:schema elementFormDefault="unqualified" targetNamespace="http://www.finalsite.com/apidata/v1.0">
...
</xs:schema>
top

Global Declarations

Element: AthleticCombined

Name AthleticCombined
Type tns:AthleticCombined
Nillable no
Abstract no
XML Instance Representation
<tns:AthleticCombined>

<AthleticTeam> tns:AthleticTeam </AthleticTeam> [1]
<AthleticEvent> tns:AthleticEvent </AthleticEvent> [1]
</tns:AthleticCombined>
Schema Component Representation
<xs:element name="AthleticCombined" type=" tns:AthleticCombined "/>
top

Element: AthleticEvents

Name AthleticEvents
Type tns:AthleticEvents
Nillable no
Abstract no
XML Instance Representation
<tns:AthleticEvents>

<AthleticEvent> tns:AthleticEvent </AthleticEvent> [1..*]
</tns:AthleticEvents>
Schema Component Representation
<xs:element name="AthleticEvents" type=" tns:AthleticEvents "/>
top

Element: AthleticLocations

Name AthleticLocations
Type tns:AthleticLocations
Nillable no
Abstract no
XML Instance Representation
<tns:AthleticLocations>

<AthleticLocation> tns:AthleticLocation </AthleticLocation> [1..*]
</tns:AthleticLocations>
Schema Component Representation
<xs:element name="AthleticLocations" type=" tns:AthleticLocations "/>
top

Element: AthleticOpponents

Name AthleticOpponents
Type tns:AthleticOpponents
Nillable no
Abstract no
XML Instance Representation
<tns:AthleticOpponents>

<AthleticOpponent> tns:AthleticOpponent </AthleticOpponent> [1..*]
</tns:AthleticOpponents>
Schema Component Representation
<xs:element name="AthleticOpponents" type=" tns:AthleticOpponents "/>
top

Element: AthleticSports

Name AthleticSports
Type tns:AthleticSports
Nillable no
Abstract no
XML Instance Representation
<tns:AthleticSports>

<AthleticSport> tns:AthleticSport </AthleticSport> [0..*]
</tns:AthleticSports>
Schema Component Representation
<xs:element name="AthleticSports" type=" tns:AthleticSports "/>
top

Element: AthleticTeams

Name AthleticTeams
Type tns:AthleticTeams
Nillable no
Abstract no
XML Instance Representation
<tns:AthleticTeams>

<AthleticTeam> tns:AthleticTeam </AthleticTeam> [1..*]
</tns:AthleticTeams>
Schema Component Representation
<xs:element name="AthleticTeams" type=" tns:AthleticTeams "/>
top

Element: CalendarEvents

Name CalendarEvents
Type tns:CalendarEvents
Nillable no
Abstract no
XML Instance Representation
<tns:CalendarEvents>

<CalendarEvent> tns:CalendarEvent </CalendarEvent> [1..*]
</tns:CalendarEvents>
Schema Component Representation
<xs:element name="CalendarEvents" type=" tns:CalendarEvents "/>
top

Element: Calendars

Name Calendars
Type tns:Calendars
Nillable no
Abstract no
XML Instance Representation
<tns:Calendars>

<Calendar> tns:Calendar </Calendar> [1..*]
</tns:Calendars>
Schema Component Representation
<xs:element name="Calendars" type=" tns:Calendars "/>
top

Element: ConstituentMemberships

Name ConstituentMemberships
Type tns:ConstituentMemberships
Nillable no
Abstract no
XML Instance Representation
<tns:ConstituentMemberships>

<ConstituentMembership> tns:ConstituentMembership </ConstituentMembership> [1..2000]
</tns:ConstituentMemberships>
Schema Component Representation
<xs:element name="ConstituentMemberships" type=" tns:ConstituentMemberships "/>
top

Element: Constituent_With_Memberships

Name Constituent_With_Memberships
Type tns:Constituent_With_Memberships
Nillable no
Abstract no
XML Instance Representation
<tns:Constituent_With_Memberships>

<Constituent> tns:Constituent_In </Constituent> [1]
<Memberships> tns:Memberships </Memberships> [0..1]
</tns:Constituent_With_Memberships>
Schema Component Representation
<xs:element name="Constituent_With_Memberships" type=" tns:Constituent_With_Memberships "/>
top

Element: Constituents

Name Constituents
Type tns:Constituents
Nillable no
Abstract no
XML Instance Representation
<tns:Constituents>

<Constituent> tns:Constituent_In </Constituent> [1..2000]
</tns:Constituents>
Schema Component Representation
<xs:element name="Constituents" type=" tns:Constituents "/>
top

Element: Constituents_With_Memberships_And_Relationships

Name Constituents_With_Memberships_And_Relationships
Type tns:Constituents_With_Memberships_And_Relationships
Nillable no
Abstract no
XML Instance Representation
<tns:Constituents_With_Memberships_And_Relationships>

<Constituents_With_Memberships> tns:Constituents_With_Memberships </Constituents_With_Memberships> [1]
<Relationships> tns:Relationships </Relationships> [0..1]
</tns:Constituents_With_Memberships_And_Relationships>
Schema Component Representation
<xs:element name="Constituents_With_Memberships_And_Relationships" type=" tns:Constituents_With_Memberships_And_Relationships "/>
top

Element: Duplicate_id_Collection

Name Duplicate_id_Collection
Type tns:Duplicate_id_Collection
Nillable no
Abstract no
XML Instance Representation
<tns:Duplicate_id_Collection>

<masterId> xs:string </masterId> [1]
<duplicateId> xs:string </duplicateId> [1..*]
</tns:Duplicate_id_Collection>
Schema Component Representation
<xs:element name="Duplicate_id_Collection" type=" tns:Duplicate_id_Collection "/>
top

Element: Events

Name Events
Type tns:Events
Nillable no
Abstract no
XML Instance Representation
<tns:Events>

<Event> tns:Event </Event> [1..*]
</tns:Events>
Schema Component Representation
<xs:element name="Events" type=" tns:Events "/>
top

Element: GroupMemberships

Name GroupMemberships
Type tns:GroupMemberships
Nillable no
Abstract no
XML Instance Representation
<tns:GroupMemberships>

<GroupMembership> tns:GroupMembership </GroupMembership> [1..2000]
</tns:GroupMemberships>
Schema Component Representation
<xs:element name="GroupMemberships" type=" tns:GroupMemberships "/>
top

Element: Groups

Name Groups
Type tns:Groups
Nillable no
Abstract no
XML Instance Representation
<tns:Groups>

<Group> tns:Group_In </Group> [1..4000]
</tns:Groups>
Schema Component Representation
<xs:element name="Groups" type=" tns:Groups "/>
top

Element: Households

Name Households
Type tns:Households
Nillable no
Abstract no
XML Instance Representation
<tns:Households>

<Household> tns:Household </Household> [1..2000]
</tns:Households>
Schema Component Representation
<xs:element name="Households" type=" tns:Households "/>
top

Element: Memberships

Name Memberships
Type tns:Memberships
Nillable no
Abstract no
XML Instance Representation
<tns:Memberships>

<Membership> tns:Membership </Membership> [1..*]
</tns:Memberships>
Schema Component Representation
<xs:element name="Memberships" type=" tns:Memberships "/>
top

Element: NewsCategories

Name NewsCategories
Type tns:NewsCategories
Nillable no
Abstract no
XML Instance Representation
<tns:NewsCategories>

<NewsCategory> tns:NewsCategory </NewsCategory> [1..2000]
</tns:NewsCategories>
Schema Component Representation
<xs:element name="NewsCategories" type=" tns:NewsCategories "/>
top

Element: NewsPosts

Name NewsPosts
Type tns:NewsPosts
Nillable no
Abstract no
XML Instance Representation
<tns:NewsPosts>

<NewsPost> tns:NewsPost </NewsPost> [1..2000]
</tns:NewsPosts>
Schema Component Representation
<xs:element name="NewsPosts" type=" tns:NewsPosts "/>
top

Element: Relationships

Name Relationships
Type tns:Relationships
Nillable no
Abstract no
XML Instance Representation
<tns:Relationships>

<Relationship> tns:Relationship </Relationship> [1..4000]
</tns:Relationships>
Schema Component Representation
<xs:element name="Relationships" type=" tns:Relationships "/>
top

Global Definitions

Complex Type: Address

Parent type: None
Direct sub-types:
Name Address
Abstract no
Documentation Core Address complexType.
XML Instance Representation
<...>

<Address1> xs:string </Address1> [0..1]
<Address2> xs:string </Address2> [0..1]
<Address3> xs:string </Address3> [0..1]
<City> xs:string </City> [0..1]
<State> xs:string </State> [0..1]
<Region> xs:string </Region> [0..1]
<Zip> xs:string </Zip> [0..1]
<Country> xs:string </Country> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Address">
<xs:sequence>
<xs:element name="Address1" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Address2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Address3" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="City" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="State" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Region" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Zip" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Country" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticCombined

Parent type: None
Direct sub-types: None
Name AthleticCombined
Abstract no
XML Instance Representation
<...>

<AthleticTeam> tns:AthleticTeam </AthleticTeam> [1]
<AthleticEvent> tns:AthleticEvent </AthleticEvent> [1]
</...>
Schema Component Representation
<xs:complexType name="AthleticCombined">
<xs:sequence>
<xs:element name="AthleticTeam" type=" tns:AthleticTeam " maxOccurs="1" minOccurs="1"/>
<xs:element name="AthleticEvent" type=" tns:AthleticEvent " maxOccurs="1" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticEvent

Parent type: tns:Event (derivation method: extension)
Direct sub-types: None
Name AthleticEvent
Abstract no
XML Instance Representation
<...>

<EventOccurrenceID> xs:int </EventOccurrenceID> [1]
<EventTitle> xs:string </EventTitle> [1]
<Summary> xs:string </Summary> [0..1]
<Description> xs:string </Description> [0..1]
<StartDate> xs:date </StartDate> [0..1]
<StartTime> xs:dateTime </StartTime> [0..1]
<EndDate> xs:date </EndDate> [0..1]
<EndTime> xs:dateTime </EndTime> [0..1]
<AllDay> xs:boolean </AllDay> [0..1]
Start Choice [1]

<CalendarEventMetaData> tns:CalendarEventMeta </CalendarEventMetaData> [0..1]
<AthleticEventMetaData> tns:AthleticEventMeta </AthleticEventMetaData> [0..1]
End Choice

</...>
Schema Component Representation
<xs:complexType name="AthleticEvent">
<xs:complexContent>
<xs:extension base=" tns:Event "/>
</xs:complexContent>
</xs:complexType>
top

Complex Type: AthleticEventMeta

Parent type: None
Direct sub-types: None
Name AthleticEventMeta
Abstract no
XML Instance Representation
<...>

<AthleticEventID> xs:int </AthleticEventID> [0..1]
<ImportID> xs:string </ImportID> [0..1]
<OldAthleticEventIdList> xs:string </OldAthleticEventIdList> [0..1]
<AthleticTeamIDs> tns:AthleticTeamIDs </AthleticTeamIDs> [0..1]
<EventType> tns:fsEventType </EventType> [0..1]
<Locations> tns:AthleticLocations </Locations> [0..1]
<Opponents> tns:AthleticOpponents </Opponents> [0..1]
<Schools> tns:Schools </Schools> [0..1]
<DismissalTime> xs:dateTime </DismissalTime> [0..1]
<DepartTime> xs:dateTime </DepartTime> [0..1]
<ReturnTime> xs:dateTime </ReturnTime> [0..1]
<PickupTime> xs:dateTime </PickupTime> [0..1]
<Recurrence> xs:string </Recurrence> [0..1]
<Advantage> xs:string </Advantage> [0..1]
<League> xs:boolean </League> [0..1]
<CustomOpponent> xs:string </CustomOpponent> [0..1]
<CustomDirections> xs:string </CustomDirections> [0..1]
<Transportation> xs:string </Transportation> [0..1]
<Result> xs:string </Result> [0..1]
<Score> xs:string </Score> [0..1]
<Recap> xs:string </Recap> [0..1]
<Cancelled> xs:boolean </Cancelled> [0..1]
<Postponed> xs:string </Postponed> [0..1]
<ChangeMessage> xs:string </ChangeMessage> [0..1]
<StartTimeToBeDetermined> xs:boolean </StartTimeToBeDetermined> [0..1]
<TimeZone> xs:string </TimeZone> [0..1]
<UseOldAthleticEventID> xs:boolean </UseOldAthleticEventID> [0..1]
</...>
Schema Component Representation
<xs:complexType name="AthleticEventMeta">
<xs:sequence>
<xs:element name="AthleticEventID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="OldAthleticEventIdList" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="AthleticTeamIDs" type=" tns:AthleticTeamIDs " maxOccurs="1" minOccurs="0"/>
<xs:element name="EventType" type=" tns:fsEventType " maxOccurs="1" minOccurs="0"/>
<xs:element name="Locations" type=" tns:AthleticLocations " maxOccurs="1" minOccurs="0"/>
<xs:element name="Opponents" type=" tns:AthleticOpponents " maxOccurs="1" minOccurs="0"/>
<xs:element name="Schools" type=" tns:Schools " maxOccurs="1" minOccurs="0"/>
<xs:element name="DismissalTime" type=" xs:dateTime " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="DepartTime" type=" xs:dateTime " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="ReturnTime" type=" xs:dateTime " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="PickupTime" type=" xs:dateTime " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="Recurrence" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Advantage" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="League" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="CustomOpponent" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="CustomDirections" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Transportation" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Result" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Score" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Recap" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Cancelled" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="Postponed" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ChangeMessage" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="StartTimeToBeDetermined" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="TimeZone" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="UseOldAthleticEventID" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticEvents

Parent type: None
Direct sub-types: None
Name AthleticEvents
Abstract no
XML Instance Representation
<...>

<AthleticEvent> tns:AthleticEvent </AthleticEvent> [1..*]
</...>
Schema Component Representation
<xs:complexType name="AthleticEvents">
<xs:sequence>
<xs:element name="AthleticEvent" type=" tns:AthleticEvent " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticLocation

Parent type: tns:Address (derivation method: extension)
Direct sub-types: None
Name AthleticLocation
Abstract no
XML Instance Representation
<...>

<Address1> xs:string </Address1> [0..1]
<Address2> xs:string </Address2> [0..1]
<Address3> xs:string </Address3> [0..1]
<City> xs:string </City> [0..1]
<State> xs:string </State> [0..1]
<Region> xs:string </Region> [0..1]
<Zip> xs:string </Zip> [0..1]
<Country> xs:string </Country> [0..1]
<LocationID> xs:int </LocationID> [0..1]
<LocationName> xs:string </LocationName> [0..1]
<Directions> xs:string </Directions> [0..1]
</...>
Schema Component Representation
<xs:complexType name="AthleticLocation">
<xs:complexContent>
<xs:extension base=" tns:Address ">
<xs:sequence>
<xs:element name="LocationID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="LocationName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Directions" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: AthleticLocations

Parent type: None
Direct sub-types: None
Name AthleticLocations
Abstract no
XML Instance Representation
<...>

<AthleticLocation> tns:AthleticLocation </AthleticLocation> [1..*]
</...>
Schema Component Representation
<xs:complexType name="AthleticLocations">
<xs:sequence>
<xs:element name="AthleticLocation" type=" tns:AthleticLocation " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticOpponent

Parent type: tns:Address (derivation method: extension)
Direct sub-types: None
Name AthleticOpponent
Abstract no
XML Instance Representation
<...>

<Address1> xs:string </Address1> [0..1]
<Address2> xs:string </Address2> [0..1]
<Address3> xs:string </Address3> [0..1]
<City> xs:string </City> [0..1]
<State> xs:string </State> [0..1]
<Region> xs:string </Region> [0..1]
<Zip> xs:string </Zip> [0..1]
<Country> xs:string </Country> [0..1]
<OpponentID> xs:int </OpponentID> [0..1]
<OpponentName> xs:string </OpponentName> [0..1]
<Directions> xs:string </Directions> [0..1]
</...>
Schema Component Representation
<xs:complexType name="AthleticOpponent">
<xs:complexContent>
<xs:extension base=" tns:Address ">
<xs:sequence>
<xs:element name="OpponentID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="OpponentName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Directions" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: AthleticOpponents

Parent type: None
Direct sub-types: None
Name AthleticOpponents
Abstract no
XML Instance Representation
<...>

<AthleticOpponent> tns:AthleticOpponent </AthleticOpponent> [1..*]
</...>
Schema Component Representation
<xs:complexType name="AthleticOpponents">
<xs:sequence>
<xs:element name="AthleticOpponent" type=" tns:AthleticOpponent " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticSport

Parent type: None
Direct sub-types: None
Name AthleticSport
Abstract no
XML Instance Representation
<...>

<AthleticSportID> xs:int </AthleticSportID> [1]
<SportName> xs:string </SportName> [1]
<DefaultSeason> xs:string </DefaultSeason> [0..1]
<ImportedSportCode> xs:string </ImportedSportCode> [0..1]
<ImportedSportString> xs:string </ImportedSportString> [0..1]
<SortOrder> xs:int </SortOrder> [0..1]
<IconImage> xs:string </IconImage> [0..1]
<HighScoreWins> xs:boolean </HighScoreWins> [0..1]
<ImportID> xs:string </ImportID> [0..1]
</...>
Schema Component Representation
<xs:complexType name="AthleticSport">
<xs:sequence>
<xs:element name="AthleticSportID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="SportName" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="DefaultSeason" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportedSportCode" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportedSportString" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="SortOrder" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="IconImage" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="HighScoreWins" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticSports

Parent type: None
Direct sub-types: None
Name AthleticSports
Abstract no
XML Instance Representation
<...>

<AthleticSport> tns:AthleticSport </AthleticSport> [0..*]
</...>
Schema Component Representation
<xs:complexType name="AthleticSports">
<xs:sequence>
<xs:element name="AthleticSport" type=" tns:AthleticSport " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticTeam

Parent type: None
Direct sub-types: None
Name AthleticTeam
Abstract no
XML Instance Representation
<...>

<AthleticTeamID> xs:int </AthleticTeamID> [0..1]
<TeamName> xs:string </TeamName> [0..1]
<DivisionID> xs:int </DivisionID> [0..1]
<Division> xs:string </Division> [0..1]
<Season> xs:string (value comes from list: {'Summer'|'Spring'|'Winter'|'Fall'|'keep'}) </Season> [0..1]
<SportID> xs:int </SportID> [0..1]
<Sport> xs:string </Sport> [0..1]
<GenderID> xs:int </GenderID> [0..1]
<Gender> xs:string </Gender> [0..1]
<SchoolID> xs:int </SchoolID> [0..1]
<School> xs:string </School> [0..1]
<CustomName> xs:string </CustomName> [0..1]
<TeamPageContent> xs:string </TeamPageContent> [0..1]
<TeamOverviewContent> xs:string </TeamOverviewContent> [0..1]
<TeamBannerContent> xs:string </TeamBannerContent> [0..1]
<ImportID> xs:string </ImportID> [0..1]
<Roster> tns:Roster </Roster> [0..1]
</...>
Schema Component Representation
<xs:complexType name="AthleticTeam">
<xs:sequence>
<xs:element name="AthleticTeamID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="TeamName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DivisionID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="Division" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Season" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="Summer"/>
<xs:enumeration value="Spring"/>
<xs:enumeration value="Winter"/>
<xs:enumeration value="Fall"/>
<xs:enumeration value="keep"/>
<-- Magic value that prevents overwriting of Season. -->
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SportID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="Sport" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="GenderID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="Gender" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="SchoolID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="School" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="CustomName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="TeamPageContent" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="TeamOverviewContent" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="TeamBannerContent" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Roster" type=" tns:Roster " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticTeamIDs

Parent type: None
Direct sub-types: None
Name AthleticTeamIDs
Abstract no
XML Instance Representation
<...>

<AthleticTeamID> xs:string </AthleticTeamID> [1..*]
</...>
Schema Component Representation
<xs:complexType name="AthleticTeamIDs">
<xs:sequence>
<xs:element name="AthleticTeamID" type=" xs:string " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: AthleticTeams

Parent type: None
Direct sub-types: None
Name AthleticTeams
Abstract no
XML Instance Representation
<...>

<AthleticTeam> tns:AthleticTeam </AthleticTeam> [1..*]
</...>
Schema Component Representation
<xs:complexType name="AthleticTeams">
<xs:sequence>
<xs:element name="AthleticTeam" type=" tns:AthleticTeam " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Calendar

Parent type: None
Direct sub-types: None
Name Calendar
Abstract no
XML Instance Representation
<...>

<CalendarID> xs:int </CalendarID> [1]
<CalendarTitle> xs:string </CalendarTitle> [1]
<CalendarGroup> xs:string </CalendarGroup> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Calendar">
<xs:sequence>
<xs:element name="CalendarID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="CalendarTitle" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="CalendarGroup" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: CalendarEvent

Parent type: tns:Event (derivation method: extension)
Direct sub-types: None
Name CalendarEvent
Abstract no
XML Instance Representation
<...>

<EventOccurrenceID> xs:int </EventOccurrenceID> [1]
<EventTitle> xs:string </EventTitle> [1]
<Summary> xs:string </Summary> [0..1]
<Description> xs:string </Description> [0..1]
<StartDate> xs:date </StartDate> [0..1]
<StartTime> xs:dateTime </StartTime> [0..1]
<EndDate> xs:date </EndDate> [0..1]
<EndTime> xs:dateTime </EndTime> [0..1]
<AllDay> xs:boolean </AllDay> [0..1]
Start Choice [1]

<CalendarEventMetaData> tns:CalendarEventMeta </CalendarEventMetaData> [0..1]
<AthleticEventMetaData> tns:AthleticEventMeta </AthleticEventMetaData> [0..1]
End Choice

</...>
Schema Component Representation
<xs:complexType name="CalendarEvent">
<xs:complexContent>
<xs:extension base=" tns:Event "/>
</xs:complexContent>
</xs:complexType>
top

Complex Type: CalendarEventMeta

Parent type: None
Direct sub-types: None
Name CalendarEventMeta
Abstract no
XML Instance Representation
<...>

<CalendarEventID> xs:int </CalendarEventID> [1]
<CalendarIDs> tns:CalendarIDs </CalendarIDs> [1]
<Location> xs:string </Location> [0..1]
<AllDay> xs:boolean </AllDay> [0..1]
<Priority> xs:string </Priority> [0..1]
</...>
Schema Component Representation
<xs:complexType name="CalendarEventMeta">
<xs:sequence>
<xs:element name="CalendarEventID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="CalendarIDs" type=" tns:CalendarIDs " maxOccurs="1" minOccurs="1"/>
<xs:element name="Location" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="AllDay" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="Priority" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: CalendarEvents

Parent type: None
Direct sub-types: None
Name CalendarEvents
Abstract no
XML Instance Representation
<...>

<CalendarEvent> tns:CalendarEvent </CalendarEvent> [1..*]
</...>
Schema Component Representation
<xs:complexType name="CalendarEvents">
<xs:sequence>
<xs:element name="CalendarEvent" type=" tns:CalendarEvent " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: CalendarIDs

Parent type: None
Direct sub-types: None
Name CalendarIDs
Abstract no
XML Instance Representation
<...>

<CalendarID> xs:int </CalendarID> [1..*]
</...>
Schema Component Representation
<xs:complexType name="CalendarIDs">
<xs:sequence>
<xs:element name="CalendarID" type=" xs:int " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Calendars

Parent type: None
Direct sub-types: None
Name Calendars
Abstract no
XML Instance Representation
<...>

<Calendar> tns:Calendar </Calendar> [1..*]
</...>
Schema Component Representation
<xs:complexType name="Calendars">
<xs:sequence>
<xs:element name="Calendar" type=" tns:Calendar " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Constituent

Parent type: None
Direct sub-types:
Name Constituent
Abstract no
Documentation Container element for constituent data. Empty or NULL elements get ignored on upload. For "Get" methods, empty or NULL values are not returned.
XML Instance Representation
<...>

<ServiceID> xs:string </ServiceID> [0..1]
<ImportID> xs:string </ImportID> [1]
<FirstName> xs:string </FirstName> [0..1]
<LastName> xs:string </LastName> [0..1]
<MiddleName> xs:string </MiddleName> [0..1]
<NickName> xs:string </NickName> [0..1]
<Initials> xs:string (length >= 0) </Initials> [0..1]
<MaidenName> xs:string </MaidenName> [0..1]
<NamePrefix> xs:string </NamePrefix> [0..1]
<NameSuffix> xs:string </NameSuffix> [0..1]
<UserName> xs:string </UserName> [0..1]
<MaritalStatus> xs:string </MaritalStatus> [0..1]
<ImportID_Household> xs:string </ImportID_Household> [0..1]
<Gender> tns:fsGender </Gender> [0..1]
<MedicalInformation> xs:string </MedicalInformation> [0..1]
<VoiceMail> xs:string </VoiceMail> [0..1]
<Room> xs:string </Room> [0..1]
<Ethnicity> xs:string </Ethnicity> [0..1]
<BirthDate> xs:date </BirthDate> [0..1]
<DateEnrolled> xs:date </DateEnrolled> [0..1]
<MarriageDate> xs:date </MarriageDate> [0..1]
<RetireDate> xs:date </RetireDate> [0..1]
<DeceasedDate> xs:date </DeceasedDate> [0..1]
<CurrentGrade> xs:string </CurrentGrade> [0..1]
<ClassOf> tns:fsYear </ClassOf> [0..1]
<Homeroom> xs:string </Homeroom> [0..1]
<ImportID_HomeroomTeacher> xs:string </ImportID_HomeroomTeacher> [0..1]
<ImportID_Advisor> xs:string </ImportID_Advisor> [0..1]
<Locker> xs:string </Locker> [0..1]
<BusRoute> xs:string </BusRoute> [0..1]
<Carpool> xs:string </Carpool> [0..1]
<LicensePlate> xs:string </LicensePlate> [0..1]
<EmployedSince> xs:date </EmployedSince> [0..1]
<Biography> xs:string </Biography> [0..1]
<Religion> xs:string </Religion> [0..1]
<PlaceOfWorship> xs:string </PlaceOfWorship> [0..1]
<PersonalURL> xs:anyURI </PersonalURL> [0..1]
<BusinessName> xs:string </BusinessName> [0..1]
<Occupation> xs:string </Occupation> [0..1]
<JobTitle> xs:string </JobTitle> [0..1]
<BusinessURL> xs:anyURI </BusinessURL> [0..1]
<Industry> xs:string </Industry> [0..1]
<Organization> xs:string </Organization> [0..1]
<Status> tns:fsStatus </Status> [0..1]
<Unpublish> xs:boolean </Unpublish> [0..1]
<Custom1> xs:string </Custom1> [0..1]
<Custom2> xs:string </Custom2> [0..1]
<Custom3> xs:string </Custom3> [0..1]
<Custom4> xs:string </Custom4> [0..1]
<Custom5> xs:string </Custom5> [0..1]
<Custom6> xs:string </Custom6> [0..1]
<Custom7> xs:string </Custom7> [0..1]
<Custom8> xs:string </Custom8> [0..1]
<Custom9> xs:string </Custom9> [0..1]
<Custom10> xs:string </Custom10> [0..1]
<ImportID2> xs:string </ImportID2> [0..1]
<Degree1> xs:string </Degree1> [0..1]
<Degree2> xs:string </Degree2> [0..1]
<Degree3> xs:string </Degree3> [0..1]
<Degree4> xs:string </Degree4> [0..1]
<Degree5> xs:string </Degree5> [0..1]
<DegreeYear1> tns:fsYear </DegreeYear1> [0..1]
<DegreeYear2> tns:fsYear </DegreeYear2> [0..1]
<DegreeYear3> tns:fsYear </DegreeYear3> [0..1]
<DegreeYear4> tns:fsYear </DegreeYear4> [0..1]
<DegreeYear5> tns:fsYear </DegreeYear5> [0..1]
<DegreeSchool1> xs:string </DegreeSchool1> [0..1]
<DegreeSchool2> xs:string </DegreeSchool2> [0..1]
<DegreeSchool3> xs:string </DegreeSchool3> [0..1]
<DegreeSchool4> xs:string </DegreeSchool4> [0..1]
<DegreeSchool5> xs:string </DegreeSchool5> [0..1]
<FieldOfStudy1> xs:string </FieldOfStudy1> [0..1]
<FieldOfStudy2> xs:string </FieldOfStudy2> [0..1]
<FieldOfStudy3> xs:string </FieldOfStudy3> [0..1]
<FieldOfStudy4> xs:string </FieldOfStudy4> [0..1]
<FieldOfStudy5> xs:string </FieldOfStudy5> [0..1]
<Title1> xs:string </Title1> [0..1]
<Title2> xs:string </Title2> [0..1]
<Title3> xs:string </Title3> [0..1]
<Title4> xs:string </Title4> [0..1]
<Title5> xs:string </Title5> [0..1]
<Addresses> tns:HouseHoldAddresses </Addresses> [0..1]
<Emails> tns:Emails </Emails> [0..1]
<Phones> tns:Phones </Phones> [0..1]
<ImportIDs> tns:ImportIDs </ImportIDs> [0..1]
<DepartmentGroups> xs:string </DepartmentGroups> [0..1]
<LocationGroups> xs:string </LocationGroups> [0..1]
<IsAdminUser> xs:boolean </IsAdminUser> [0..1]
<PreferredLanguage> xs:string (value comes from list: {'af'|'sq'|'am'|'ar'|'hy'|'az'|'eu'|'be'|'bn'|'bs'|'bg'|'ca'|'ceb'|'zh-CN'|'zh-TW'|'co'|'hr'|'cs'|'da'|'nl'|'en'|'eo'|'et'|'fi'|'fr'|'fy'|'gl'|'ka'|'de'|'el'|'gu'|'ht'|'ha'|'haw'|'he'|'hi'|'hmn'|'hu'|'is'|'ig'|'id'|'ga'|'it'|'ja'|'jv'|'kn'|'kk'|'km'|'rw'|'ko'|'ku'|'ky'|'lo'|'lv'|'lt'|'lb'|'mk'|'mg'|'ms'|'ml'|'mt'|'mi'|'mr'|'mn'|'my'|'ne'|'no'|'ny'|'or'|'ps'|'fa'|'pl'|'pt'|'pa'|'ro'|'ru'|'sm'|'gd'|'sr'|'st'|'sn'|'sd'|'si'|'sk'|'sl'|'so'|'es'|'su'|'sw'|'sv'|'tl'|'tg'|'ta'|'tt'|'te'|'th'|'tr'|'tk'|'uk'|'ur'|'ug'|'uz'|'vi'|'cy'|'xh'|'yi'|'yo'|'zu'}) </PreferredLanguage> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Constituent">
<xs:sequence>
<xs:element name="ServiceID" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="FirstName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="LastName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="MiddleName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="NickName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Initials" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MaidenName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="NamePrefix" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="NameSuffix" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="UserName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="MaritalStatus" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID_Household" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Gender" type=" tns:fsGender " maxOccurs="1" minOccurs="0"/>
<xs:element name="MedicalInformation" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="VoiceMail" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Room" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Ethnicity" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="BirthDate" type=" xs:date " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="DateEnrolled" type=" xs:date " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="MarriageDate" type=" xs:date " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="RetireDate" type=" xs:date " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="DeceasedDate" type=" xs:date " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="CurrentGrade" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ClassOf" type=" tns:fsYear " maxOccurs="1" minOccurs="0"/>
<xs:element name="Homeroom" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID_HomeroomTeacher" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID_Advisor" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Locker" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="BusRoute" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Carpool" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="LicensePlate" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="EmployedSince" type=" xs:date " maxOccurs="1" minOccurs="0" nillable="true"/>
<xs:element name="Biography" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Religion" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="PlaceOfWorship" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="PersonalURL" type=" xs:anyURI " maxOccurs="1" minOccurs="0"/>
<xs:element name="BusinessName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Occupation" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="JobTitle" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="BusinessURL" type=" xs:anyURI " maxOccurs="1" minOccurs="0"/>
<xs:element name="Industry" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Organization" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Status" type=" tns:fsStatus " maxOccurs="1" minOccurs="0"/>
<xs:element name="Unpublish" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom1" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom3" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom4" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom5" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom6" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom7" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom8" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom9" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Custom10" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Degree1" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Degree2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Degree3" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Degree4" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Degree5" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeYear1" type=" tns:fsYear " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeYear2" type=" tns:fsYear " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeYear3" type=" tns:fsYear " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeYear4" type=" tns:fsYear " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeYear5" type=" tns:fsYear " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeSchool1" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeSchool2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeSchool3" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeSchool4" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DegreeSchool5" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="FieldOfStudy1" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="FieldOfStudy2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="FieldOfStudy3" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="FieldOfStudy4" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="FieldOfStudy5" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Title1" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Title2" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Title3" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Title4" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Title5" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Addresses" type=" tns:HouseHoldAddresses " maxOccurs="1" minOccurs="0"/>
<xs:element name="Emails" type=" tns:Emails " maxOccurs="1" minOccurs="0"/>
<xs:element name="Phones" type=" tns:Phones " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportIDs" type=" tns:ImportIDs " maxOccurs="1" minOccurs="0"/>
<xs:element name="DepartmentGroups" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="LocationGroups" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="IsAdminUser" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="PreferredLanguage" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="af"/>
<xs:enumeration value="sq"/>
<xs:enumeration value="am"/>
<xs:enumeration value="ar"/>
<xs:enumeration value="hy"/>
<xs:enumeration value="az"/>
<xs:enumeration value="eu"/>
<xs:enumeration value="be"/>
<xs:enumeration value="bn"/>
<xs:enumeration value="bs"/>
<xs:enumeration value="bg"/>
<xs:enumeration value="ca"/>
<xs:enumeration value="ceb"/>
<xs:enumeration value="zh-CN"/>
<xs:enumeration value="zh-TW"/>
<xs:enumeration value="co"/>
<xs:enumeration value="hr"/>
<xs:enumeration value="cs"/>
<xs:enumeration value="da"/>
<xs:enumeration value="nl"/>
<xs:enumeration value="en"/>
<xs:enumeration value="eo"/>
<xs:enumeration value="et"/>
<xs:enumeration value="fi"/>
<xs:enumeration value="fr"/>
<xs:enumeration value="fy"/>
<xs:enumeration value="gl"/>
<xs:enumeration value="ka"/>
<xs:enumeration value="de"/>
<xs:enumeration value="el"/>
<xs:enumeration value="gu"/>
<xs:enumeration value="ht"/>
<xs:enumeration value="ha"/>
<xs:enumeration value="haw"/>
<xs:enumeration value="he"/>
<xs:enumeration value="hi"/>
<xs:enumeration value="hmn"/>
<xs:enumeration value="hu"/>
<xs:enumeration value="is"/>
<xs:enumeration value="ig"/>
<xs:enumeration value="id"/>
<xs:enumeration value="ga"/>
<xs:enumeration value="it"/>
<xs:enumeration value="ja"/>
<xs:enumeration value="jv"/>
<xs:enumeration value="kn"/>
<xs:enumeration value="kk"/>
<xs:enumeration value="km"/>
<xs:enumeration value="rw"/>
<xs:enumeration value="ko"/>
<xs:enumeration value="ku"/>
<xs:enumeration value="ky"/>
<xs:enumeration value="lo"/>
<xs:enumeration value="lv"/>
<xs:enumeration value="lt"/>
<xs:enumeration value="lb"/>
<xs:enumeration value="mk"/>
<xs:enumeration value="mg"/>
<xs:enumeration value="ms"/>
<xs:enumeration value="ml"/>
<xs:enumeration value="mt"/>
<xs:enumeration value="mi"/>
<xs:enumeration value="mr"/>
<xs:enumeration value="mn"/>
<xs:enumeration value="my"/>
<xs:enumeration value="ne"/>
<xs:enumeration value="no"/>
<xs:enumeration value="ny"/>
<xs:enumeration value="or"/>
<xs:enumeration value="ps"/>
<xs:enumeration value="fa"/>
<xs:enumeration value="pl"/>
<xs:enumeration value="pt"/>
<xs:enumeration value="pa"/>
<xs:enumeration value="ro"/>
<xs:enumeration value="ru"/>
<xs:enumeration value="sm"/>
<xs:enumeration value="gd"/>
<xs:enumeration value="sr"/>
<xs:enumeration value="st"/>
<xs:enumeration value="sn"/>
<xs:enumeration value="sd"/>
<xs:enumeration value="si"/>
<xs:enumeration value="sk"/>
<xs:enumeration value="sl"/>
<xs:enumeration value="so"/>
<xs:enumeration value="es"/>
<xs:enumeration value="su"/>
<xs:enumeration value="sw"/>
<xs:enumeration value="sv"/>
<xs:enumeration value="tl"/>
<xs:enumeration value="tg"/>
<xs:enumeration value="ta"/>
<xs:enumeration value="tt"/>
<xs:enumeration value="te"/>
<xs:enumeration value="th"/>
<xs:enumeration value="tr"/>
<xs:enumeration value="tk"/>
<xs:enumeration value="uk"/>
<xs:enumeration value="ur"/>
<xs:enumeration value="ug"/>
<xs:enumeration value="uz"/>
<xs:enumeration value="vi"/>
<xs:enumeration value="cy"/>
<xs:enumeration value="xh"/>
<xs:enumeration value="yi"/>
<xs:enumeration value="yo"/>
<xs:enumeration value="zu"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: ConstituentGroup

Parent type: None
Direct sub-types: None
Name ConstituentGroup
Abstract no
XML Instance Representation
<...>

<ImportID_Group> xs:string </ImportID_Group> [0..1]
<GroupName> xs:string </GroupName> [0..1]
<DisplayNumber> xs:string </DisplayNumber> [0..1]
<Rights> tns:fsRights </Rights> [1]
</...>
Schema Component Representation
<xs:complexType name="ConstituentGroup">
<xs:sequence>
<xs:element name="ImportID_Group" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<-- hint="Group ImportID value" -->
<xs:element name="GroupName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DisplayNumber" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Rights" type=" tns:fsRights " maxOccurs="1" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: ConstituentGroups

Parent type: None
Direct sub-types: None
Name ConstituentGroups
Abstract no
XML Instance Representation
<...>

<ConstituentGroup> tns:ConstituentGroup </ConstituentGroup> [1..*]
</...>
Schema Component Representation
<xs:complexType name="ConstituentGroups">
<xs:sequence>
<xs:element name="ConstituentGroup" type=" tns:ConstituentGroup " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: ConstituentMembership

Parent type: None
Direct sub-types: None
Name ConstituentMembership
Abstract no
XML Instance Representation
<...>

<ImportID> xs:string </ImportID> [1]
<ConstituentGroups> tns:ConstituentGroups </ConstituentGroups> [0..1]
</...>
Schema Component Representation
<xs:complexType name="ConstituentMembership">
<xs:sequence>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<-- hint="Constituent ImportID value" -->
<xs:element name="ConstituentGroups" type=" tns:ConstituentGroups " maxOccurs="1" minOccurs="0"/>
<-- hint="Array of ConstituentGroup structures" -->
</xs:sequence>
</xs:complexType>
top

Complex Type: ConstituentMemberships

Parent type: None
Direct sub-types: None
Name ConstituentMemberships
Abstract no
XML Instance Representation
<...>

<ConstituentMembership> tns:ConstituentMembership </ConstituentMembership> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="ConstituentMemberships">
<xs:sequence>
<xs:element name="ConstituentMembership" type=" tns:ConstituentMembership " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Constituent_In

Parent type: tns:Constituent (derivation method: extension)
Direct sub-types: None
Name Constituent_In
Abstract no
Documentation Constituent Complex Type for input structure. Input structure supports only those elements defined the in core Constituent Complex Type.
XML Instance Representation
<...>

<ServiceID> xs:string </ServiceID> [0..1]
<ImportID> xs:string </ImportID> [1]
<FirstName> xs:string </FirstName> [0..1]
<LastName> xs:string </LastName> [0..1]
<MiddleName> xs:string </MiddleName> [0..1]
<NickName> xs:string </NickName> [0..1]
<Initials> xs:string (length >= 0) </Initials> [0..1]
<MaidenName> xs:string </MaidenName> [0..1]
<NamePrefix> xs:string </NamePrefix> [0..1]
<NameSuffix> xs:string </NameSuffix> [0..1]
<UserName> xs:string </UserName> [0..1]
<MaritalStatus> xs:string </MaritalStatus> [0..1]
<ImportID_Household> xs:string </ImportID_Household> [0..1]
<Gender> tns:fsGender </Gender> [0..1]
<MedicalInformation> xs:string </MedicalInformation> [0..1]
<VoiceMail> xs:string </VoiceMail> [0..1]
<Room> xs:string </Room> [0..1]
<Ethnicity> xs:string </Ethnicity> [0..1]
<BirthDate> xs:date </BirthDate> [0..1]
<DateEnrolled> xs:date </DateEnrolled> [0..1]
<MarriageDate> xs:date </MarriageDate> [0..1]
<RetireDate> xs:date </RetireDate> [0..1]
<DeceasedDate> xs:date </DeceasedDate> [0..1]
<CurrentGrade> xs:string </CurrentGrade> [0..1]
<ClassOf> tns:fsYear </ClassOf> [0..1]
<Homeroom> xs:string </Homeroom> [0..1]
<ImportID_HomeroomTeacher> xs:string </ImportID_HomeroomTeacher> [0..1]
<ImportID_Advisor> xs:string </ImportID_Advisor> [0..1]
<Locker> xs:string </Locker> [0..1]
<BusRoute> xs:string </BusRoute> [0..1]
<Carpool> xs:string </Carpool> [0..1]
<LicensePlate> xs:string </LicensePlate> [0..1]
<EmployedSince> xs:date </EmployedSince> [0..1]
<Biography> xs:string </Biography> [0..1]
<Religion> xs:string </Religion> [0..1]
<PlaceOfWorship> xs:string </PlaceOfWorship> [0..1]
<PersonalURL> xs:anyURI </PersonalURL> [0..1]
<BusinessName> xs:string </BusinessName> [0..1]
<Occupation> xs:string </Occupation> [0..1]
<JobTitle> xs:string </JobTitle> [0..1]
<BusinessURL> xs:anyURI </BusinessURL> [0..1]
<Industry> xs:string </Industry> [0..1]
<Organization> xs:string </Organization> [0..1]
<Status> tns:fsStatus </Status> [0..1]
<Unpublish> xs:boolean </Unpublish> [0..1]
<Custom1> xs:string </Custom1> [0..1]
<Custom2> xs:string </Custom2> [0..1]
<Custom3> xs:string </Custom3> [0..1]
<Custom4> xs:string </Custom4> [0..1]
<Custom5> xs:string </Custom5> [0..1]
<Custom6> xs:string </Custom6> [0..1]
<Custom7> xs:string </Custom7> [0..1]
<Custom8> xs:string </Custom8> [0..1]
<Custom9> xs:string </Custom9> [0..1]
<Custom10> xs:string </Custom10> [0..1]
<ImportID2> xs:string </ImportID2> [0..1]
<Degree1> xs:string </Degree1> [0..1]
<Degree2> xs:string </Degree2> [0..1]
<Degree3> xs:string </Degree3> [0..1]
<Degree4> xs:string </Degree4> [0..1]
<Degree5> xs:string </Degree5> [0..1]
<DegreeYear1> tns:fsYear </DegreeYear1> [0..1]
<DegreeYear2> tns:fsYear </DegreeYear2> [0..1]
<DegreeYear3> tns:fsYear </DegreeYear3> [0..1]
<DegreeYear4> tns:fsYear </DegreeYear4> [0..1]
<DegreeYear5> tns:fsYear </DegreeYear5> [0..1]
<DegreeSchool1> xs:string </DegreeSchool1> [0..1]
<DegreeSchool2> xs:string </DegreeSchool2> [0..1]
<DegreeSchool3> xs:string </DegreeSchool3> [0..1]
<DegreeSchool4> xs:string </DegreeSchool4> [0..1]
<DegreeSchool5> xs:string </DegreeSchool5> [0..1]
<FieldOfStudy1> xs:string </FieldOfStudy1> [0..1]
<FieldOfStudy2> xs:string </FieldOfStudy2> [0..1]
<FieldOfStudy3> xs:string </FieldOfStudy3> [0..1]
<FieldOfStudy4> xs:string </FieldOfStudy4> [0..1]
<FieldOfStudy5> xs:string </FieldOfStudy5> [0..1]
<Title1> xs:string </Title1> [0..1]
<Title2> xs:string </Title2> [0..1]
<Title3> xs:string </Title3> [0..1]
<Title4> xs:string </Title4> [0..1]
<Title5> xs:string </Title5> [0..1]
<Addresses> tns:HouseHoldAddresses </Addresses> [0..1]
<Emails> tns:Emails </Emails> [0..1]
<Phones> tns:Phones </Phones> [0..1]
<ImportIDs> tns:ImportIDs </ImportIDs> [0..1]
<DepartmentGroups> xs:string </DepartmentGroups> [0..1]
<LocationGroups> xs:string </LocationGroups> [0..1]
<IsAdminUser> xs:boolean </IsAdminUser> [0..1]
<PreferredLanguage> xs:string (value comes from list: {'af'|'sq'|'am'|'ar'|'hy'|'az'|'eu'|'be'|'bn'|'bs'|'bg'|'ca'|'ceb'|'zh-CN'|'zh-TW'|'co'|'hr'|'cs'|'da'|'nl'|'en'|'eo'|'et'|'fi'|'fr'|'fy'|'gl'|'ka'|'de'|'el'|'gu'|'ht'|'ha'|'haw'|'he'|'hi'|'hmn'|'hu'|'is'|'ig'|'id'|'ga'|'it'|'ja'|'jv'|'kn'|'kk'|'km'|'rw'|'ko'|'ku'|'ky'|'lo'|'lv'|'lt'|'lb'|'mk'|'mg'|'ms'|'ml'|'mt'|'mi'|'mr'|'mn'|'my'|'ne'|'no'|'ny'|'or'|'ps'|'fa'|'pl'|'pt'|'pa'|'ro'|'ru'|'sm'|'gd'|'sr'|'st'|'sn'|'sd'|'si'|'sk'|'sl'|'so'|'es'|'su'|'sw'|'sv'|'tl'|'tg'|'ta'|'tt'|'te'|'th'|'tr'|'tk'|'uk'|'ur'|'ug'|'uz'|'vi'|'cy'|'xh'|'yi'|'yo'|'zu'}) </PreferredLanguage> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Constituent_In">
<xs:complexContent>
<xs:extension base=" tns:Constituent "/>
</xs:complexContent>
</xs:complexType>
top

Complex Type: Constituent_With_Memberships

Parent type: None
Direct sub-types: None
Name Constituent_With_Memberships
Abstract no
Documentation Container element for constituents. Must contain one or more Constituent elements.
XML Instance Representation
<...>

<Constituent> tns:Constituent_In </Constituent> [1]
<Memberships> tns:Memberships </Memberships> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Constituent_With_Memberships">
<xs:sequence>
<xs:element name="Constituent" type=" tns:Constituent_In " maxOccurs="1" minOccurs="1"/>
<xs:element name="Memberships" type=" tns:Memberships " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Constituents

Parent type: None
Direct sub-types: None
Name Constituents
Abstract no
Documentation Container element for constituents. Must contain one or more Constituent elements.
XML Instance Representation
<...>

<Constituent> tns:Constituent_In </Constituent> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="Constituents">
<xs:sequence>
<xs:element name="Constituent" type=" tns:Constituent_In " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Constituents_With_Memberships

Parent type: None
Direct sub-types: None
Name Constituents_With_Memberships
Abstract no
Documentation Container element for Constituent_With_Memberships.
XML Instance Representation
<...>

<Constituent_With_Memberships> tns:Constituent_With_Memberships </Constituent_With_Memberships> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="Constituents_With_Memberships">
<xs:sequence>
<xs:element name="Constituent_With_Memberships" type=" tns:Constituent_With_Memberships " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Constituents_With_Memberships_And_Relationships

Parent type: None
Direct sub-types: None
Name Constituents_With_Memberships_And_Relationships
Abstract no
Documentation Container element for constituents and relationships.
XML Instance Representation
<...>

<Constituents_With_Memberships> tns:Constituents_With_Memberships </Constituents_With_Memberships> [1]
<Relationships> tns:Relationships </Relationships> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Constituents_With_Memberships_And_Relationships">
<xs:sequence>
<xs:element name="Constituents_With_Memberships" type=" tns:Constituents_With_Memberships " maxOccurs="1" minOccurs="1"/>
<xs:element name="Relationships" type=" tns:Relationships " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Duplicate_id_Collection

Parent type: None
Direct sub-types: None
Name Duplicate_id_Collection
Abstract no
Documentation Element which will hold a master importId, the service, the corresponding table, and the duplicate id's to be merged together.
XML Instance Representation
<...>

<masterId> xs:string </masterId> [1]
<duplicateId> xs:string </duplicateId> [1..*]
</...>
Schema Component Representation
<xs:complexType name="Duplicate_id_Collection">
<xs:sequence>
<xs:element name="masterId" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="duplicateId" type=" xs:string " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Email

Parent type: None
Direct sub-types: None
Name Email
Abstract no
XML Instance Representation
<...>

<EmailType> xs:string (value comes from list: {'Home'|'Work'|'School'|'Personal'|'Billing'}) </EmailType> [1]
<EmailAddress> tns:fsEmailAddress </EmailAddress> [1]
<IsPrimary> xs:boolean </IsPrimary> [0..1]
<IsSharedHousehold> xs:boolean </IsSharedHousehold> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Email">
<xs:sequence>
<xs:element name="EmailType" default="Home" maxOccurs="1" minOccurs="1">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="Home"/>
<xs:enumeration value="Work"/>
<xs:enumeration value="School"/>
<xs:enumeration value="Personal"/>
<xs:enumeration value="Billing"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EmailAddress" type=" tns:fsEmailAddress " maxOccurs="1" minOccurs="1"/>
<xs:element name="IsPrimary" type=" xs:boolean " default="1" maxOccurs="1" minOccurs="0"/>
<xs:element name="IsSharedHousehold" type=" xs:boolean " default="0" maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Emails

Parent type: None
Direct sub-types: None
Name Emails
Abstract no
XML Instance Representation
<...>

<Email> tns:Email </Email> [1..*]
</...>
Schema Component Representation
<xs:complexType name="Emails">
<xs:sequence>
<xs:element name="Email" type=" tns:Email " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Event

Parent type: None
Direct sub-types:
Name Event
Abstract no
Documentation Core event compexType. Same structure is returned for all events. CalendarEventMetaData is returned for calendar events, AthleticEventMetaData for Athletic events. Only one or the other is returned. All times are UTC
XML Instance Representation
<...>

<EventOccurrenceID> xs:int </EventOccurrenceID> [1]
<EventTitle> xs:string </EventTitle> [1]
<Summary> xs:string </Summary> [0..1]
<Description> xs:string </Description> [0..1]
<StartDate> xs:date </StartDate> [0..1]
<StartTime> xs:dateTime </StartTime> [0..1]
<EndDate> xs:date </EndDate> [0..1]
<EndTime> xs:dateTime </EndTime> [0..1]
<AllDay> xs:boolean </AllDay> [0..1]
Start Choice [1]

<CalendarEventMetaData> tns:CalendarEventMeta </CalendarEventMetaData> [0..1]
<AthleticEventMetaData> tns:AthleticEventMeta </AthleticEventMetaData> [0..1]
End Choice

</...>
Schema Component Representation
<xs:complexType name="Event">
<xs:sequence>
<xs:element name="EventOccurrenceID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="EventTitle" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="Summary" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Description" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="StartDate" type=" xs:date " maxOccurs="1" minOccurs="0"/>
<xs:element name="StartTime" type=" xs:dateTime " maxOccurs="1" minOccurs="0"/>
<xs:element name="EndDate" type=" xs:date " maxOccurs="1" minOccurs="0"/>
<xs:element name="EndTime" type=" xs:dateTime " maxOccurs="1" minOccurs="0"/>
<xs:element name="AllDay" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:choice>
<xs:element name="CalendarEventMetaData" type=" tns:CalendarEventMeta " maxOccurs="1" minOccurs="0"/>
<xs:element name="AthleticEventMetaData" type=" tns:AthleticEventMeta " maxOccurs="1" minOccurs="0"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
top

Complex Type: Events

Parent type: None
Direct sub-types: None
Name Events
Abstract no
XML Instance Representation
<...>

<Event> tns:Event </Event> [1..*]
</...>
Schema Component Representation
<xs:complexType name="Events">
<xs:sequence>
<xs:element name="Event" type=" tns:Event " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Feed

Parent type: None
Direct sub-types: None
Name Feed
Abstract no
XML Instance Representation
<...>

<serviceID> xs:int </serviceID> [1]
<feedID> xs:int </feedID> [0..1]
<feedName> xs:string </feedName> [1]
<isEnabled> xs:boolean </isEnabled> [0..1]
<enableOffFeed> xs:boolean </enableOffFeed> [0..1]
<offFeedDeactivationLimit> xs:int </offFeedDeactivationLimit> [0..1]
<displayName> xs:string </displayName> [0..1]
<rolesToCompareOffFeed> xs:string </rolesToCompareOffFeed> [0..1]
<offFeedEmailList> xs:string </offFeedEmailList> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Feed">
<xs:sequence>
<xs:element name="serviceID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="feedID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="feedName" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="isEnabled" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="enableOffFeed" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="offFeedDeactivationLimit" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="displayName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="rolesToCompareOffFeed" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="offFeedEmailList" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Feeds_out

Parent type: None
Direct sub-types: None
Name Feeds_out
Abstract no
XML Instance Representation
<...>

<Feed> tns:Feed </Feed> [0..*]
</...>
Schema Component Representation
<xs:complexType name="Feeds_out">
<xs:sequence>
<xs:element name="Feed" type=" tns:Feed " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Group

Parent type: None
Direct sub-types:
Name Group
Abstract no
XML Instance Representation
<...>

<ImportID> xs:string </ImportID> [1]
<GroupName> xs:string </GroupName> [1]
<Description> xs:string </Description> [0..1]
<ImportID_ParentGroup> xs:string </ImportID_ParentGroup> [0..1]
<HasChildGroup> xs:boolean </HasChildGroup> [0..1]
<AllowSignup> xs:boolean </AllowSignup> [0..1]
<DisplayNumber> xs:string </DisplayNumber> [0..1]
<Room> xs:string </Room> [0..1]
<Period> xs:string </Period> [0..1]
<SchoolYear> xs:string </SchoolYear> [0..1]
<IsArchived> xs:boolean </IsArchived> [0..1]
<IsRole> xs:boolean </IsRole> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Group">
<xs:sequence>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="GroupName" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="Description" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID_ParentGroup" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="HasChildGroup" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="AllowSignup" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="DisplayNumber" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Room" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Period" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="SchoolYear" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="IsArchived" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="IsRole" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: GroupConstituent

Parent type: None
Direct sub-types: None
Name GroupConstituent
Abstract no
XML Instance Representation
<...>

<ImportID> xs:string </ImportID> [1]
<Rights> tns:fsRights </Rights> [1]
</...>
Schema Component Representation
<xs:complexType name="GroupConstituent">
<xs:sequence>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<-- hint="Constituent ImportID value" -->
<xs:element name="Rights" type=" tns:fsRights " maxOccurs="1" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: GroupConstituents

Parent type: None
Direct sub-types: None
Name GroupConstituents
Abstract no
XML Instance Representation
<...>

<GroupConstituent> tns:GroupConstituent </GroupConstituent> [1..*]
</...>
Schema Component Representation
<xs:complexType name="GroupConstituents">
<xs:sequence>
<xs:element name="GroupConstituent" type=" tns:GroupConstituent " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: GroupMembership

Parent type: None
Direct sub-types: None
Name GroupMembership
Abstract no
XML Instance Representation
<...>

<ImportID_Group> xs:string </ImportID_Group> [1]
<GroupName> xs:string </GroupName> [0..1]
<DisplayNumber> xs:string </DisplayNumber> [0..1]
<Description> xs:string </Description> [0..1]
<ImportID_ParentGroup> xs:string </ImportID_ParentGroup> [0..1]
<HasChildGroup> xs:boolean </HasChildGroup> [0..1]
<AllowSignup> xs:boolean </AllowSignup> [0..1]
<Room> xs:string </Room> [0..1]
<Period> xs:string </Period> [0..1]
<SchoolYear> xs:string </SchoolYear> [0..1]
<IsArchived> xs:boolean </IsArchived> [0..1]
<IsRole> xs:boolean </IsRole> [0..1]
<GroupConstituents> tns:GroupConstituents </GroupConstituents> [0..1]
</...>
Schema Component Representation
<xs:complexType name="GroupMembership">
<xs:sequence>
<xs:element name="ImportID_Group" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<-- hint="Group ImportID value" -->
<xs:element name="GroupName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="DisplayNumber" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Description" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID_ParentGroup" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="HasChildGroup" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="AllowSignup" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="Room" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Period" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="SchoolYear" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="IsArchived" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="IsRole" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
<xs:element name="GroupConstituents" type=" tns:GroupConstituents " maxOccurs="1" minOccurs="0"/>
<-- hint="Array of ConstituentGroup structures" -->
</xs:sequence>
</xs:complexType>
top

Complex Type: GroupMemberships

Parent type: None
Direct sub-types: None
Name GroupMemberships
Abstract no
XML Instance Representation
<...>

<GroupMembership> tns:GroupMembership </GroupMembership> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="GroupMemberships">
<xs:sequence>
<xs:element name="GroupMembership" type=" tns:GroupMembership " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Group_In

Parent type: tns:Group (derivation method: extension)
Direct sub-types: None
Name Group_In
Abstract no
Documentation Group Complex Type for input structure. Input structure supports only those elements defined the in core Group Complex Type.
XML Instance Representation
<...>

<ImportID> xs:string </ImportID> [1]
<GroupName> xs:string </GroupName> [1]
<Description> xs:string </Description> [0..1]
<ImportID_ParentGroup> xs:string </ImportID_ParentGroup> [0..1]
<HasChildGroup> xs:boolean </HasChildGroup> [0..1]
<AllowSignup> xs:boolean </AllowSignup> [0..1]
<DisplayNumber> xs:string </DisplayNumber> [0..1]
<Room> xs:string </Room> [0..1]
<Period> xs:string </Period> [0..1]
<SchoolYear> xs:string </SchoolYear> [0..1]
<IsArchived> xs:boolean </IsArchived> [0..1]
<IsRole> xs:boolean </IsRole> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Group_In">
<xs:complexContent>
<xs:extension base=" tns:Group "/>
</xs:complexContent>
</xs:complexType>
top

Complex Type: Groups

Parent type: None
Direct sub-types: None
Name Groups
Abstract no
Documentation Container element for groups. Must contain one or more Group elements.
XML Instance Representation
<...>

<Group> tns:Group_In </Group> [1..4000]
</...>
Schema Component Representation
<xs:complexType name="Groups">
<xs:sequence>
<xs:element name="Group" type=" tns:Group_In " maxOccurs="4000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: HouseHoldAddress

Parent type: tns:Address (derivation method: extension)
Direct sub-types: None
Name HouseHoldAddress
Abstract no
Documentation Extends core Address complexType and adds household-specific elements. On input (POST methods) a black Address1, Address2, Address3, City, and Zip will delete the address of this AddressType from the DB.
XML Instance Representation
<...>

<Address1> xs:string </Address1> [0..1]
<Address2> xs:string </Address2> [0..1]
<Address3> xs:string </Address3> [0..1]
<City> xs:string </City> [0..1]
<State> xs:string </State> [0..1]
<Region> xs:string </Region> [0..1]
<Zip> xs:string </Zip> [0..1]
<Country> xs:string </Country> [0..1]
<AddressType> xs:string (value comes from list: {'Home'|'Work'|'School'|'Personal'|'Summer'|'Winter'|'Billing'|'Shipping'}) </AddressType> [1]
<IsPrimary> xs:boolean </IsPrimary> [0..1]
<IsSharedHousehold> xs:boolean </IsSharedHousehold> [0..1]
</...>
Schema Component Representation
<xs:complexType name="HouseHoldAddress">
<xs:complexContent>
<xs:extension base=" tns:Address ">
<xs:sequence>
<xs:element name="AddressType" default="Home" maxOccurs="1" minOccurs="1">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="Home"/>
<xs:enumeration value="Work"/>
<xs:enumeration value="School"/>
<xs:enumeration value="Personal"/>
<xs:enumeration value="Summer"/>
<xs:enumeration value="Winter"/>
<xs:enumeration value="Billing"/>
<xs:enumeration value="Shipping"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="IsPrimary" type=" xs:boolean " default="1" maxOccurs="1" minOccurs="0"/>
<xs:element name="IsSharedHousehold" type=" xs:boolean " default="0" maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: HouseHoldAddresses

Parent type: None
Direct sub-types: None
Name HouseHoldAddresses
Abstract no
XML Instance Representation
<...>

<Address> tns:HouseHoldAddress </Address> [1..*]
</...>
Schema Component Representation
<xs:complexType name="HouseHoldAddresses">
<xs:sequence>
<xs:element name="Address" type=" tns:HouseHoldAddress " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Household

Parent type: None
Direct sub-types: None
Name Household
Abstract no
XML Instance Representation
<...>

<ImportID> xs:string </ImportID> [1]
<HouseholdName> xs:string </HouseholdName> [0..1]
<Addressee> xs:string </Addressee> [0..1]
<Salutation> xs:string </Salutation> [0..1]
<InformalSalutation> xs:string </InformalSalutation> [0..1]
<RemoteProfileURL> xs:string </RemoteProfileURL> [0..1]
<Address> tns:HouseHoldAddress </Address> [0..1]
<Phones> tns:Phones </Phones> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Household">
<xs:sequence>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="HouseholdName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Addressee" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Salutation" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="InformalSalutation" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="RemoteProfileURL" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Address" type=" tns:HouseHoldAddress " maxOccurs="1" minOccurs="0"/>
<xs:element name="Phones" type=" tns:Phones " maxOccurs="1" minOccurs="0"/>
<-- hint="Array of Phone structures"> -->
</xs:sequence>
</xs:complexType>
top

Complex Type: Households

Parent type: None
Direct sub-types: None
Name Households
Abstract no
XML Instance Representation
<...>

<Household> tns:Household </Household> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="Households">
<xs:sequence>
<xs:element name="Household" type=" tns:Household " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: ImportID

Parent type: None
Direct sub-types:
Name ImportID
Abstract no
XML Instance Representation
<...>

<serviceID> xs:int </serviceID> [1]
<feedID> xs:int </feedID> [1]
<ID> xs:string </ID> [1]
</...>
Schema Component Representation
<xs:complexType name="ImportID">
<xs:sequence>
<xs:element name="serviceID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="feedID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="ID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: ImportID_Out

Parent type: tns:ImportID (derivation method: extension)
Direct sub-types: None
Name ImportID_Out
Abstract no
XML Instance Representation
<...>

<serviceID> xs:int </serviceID> [1]
<feedID> xs:int </feedID> [1]
<ID> xs:string </ID> [1]
</...>
Schema Component Representation
<xs:complexType name="ImportID_Out">
<xs:complexContent>
<xs:extension base=" tns:ImportID "/>
</xs:complexContent>
</xs:complexType>
top

Complex Type: ImportIDs

Parent type: None
Direct sub-types:
Name ImportIDs
Abstract no
XML Instance Representation
<...>

<ImportID> tns:ImportID_Out </ImportID> [0..*]
</...>
Schema Component Representation
<xs:complexType name="ImportIDs">
<xs:sequence>
<xs:element name="ImportID" type=" tns:ImportID_Out " maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: ImportIDs_Person

Parent type: tns:ImportIDs (derivation method: extension)
Direct sub-types: None
Name ImportIDs_Person
Abstract no
XML Instance Representation
<...>

<ImportID> tns:ImportID_Out </ImportID> [0..*]
</...>
Schema Component Representation
<xs:complexType name="ImportIDs_Person">
<xs:complexContent>
<xs:extension base=" tns:ImportIDs "/>
</xs:complexContent>
</xs:complexType>
top

Complex Type: ImportIDs_Related

Parent type: tns:ImportIDs (derivation method: extension)
Direct sub-types: None
Name ImportIDs_Related
Abstract no
XML Instance Representation
Schema Component Representation
top

Complex Type: Info

Parent type: None
Direct sub-types: None
Name Info
Abstract no
XML Instance Representation
<...>

Start All [1]

<TotalConstituents> xs:int </TotalConstituents> [1]
<ImportedConstituents> xs:int </ImportedConstituents> [1]
<TotalUpdatedInLastSevenDays> xs:int </TotalUpdatedInLastSevenDays> [1]
<TotalRelationships> xs:int </TotalRelationships> [1]
<TotalMemberships> xs:int </TotalMemberships> [1]
<TotalEvents> xs:int </TotalEvents> [1]
<TotalTeams> xs:int </TotalTeams> [1]
End All

</...>
Schema Component Representation
<xs:complexType name="Info">
<xs:all>
<xs:element name="TotalConstituents" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="ImportedConstituents" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="TotalUpdatedInLastSevenDays" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="TotalRelationships" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="TotalMemberships" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="TotalEvents" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="TotalTeams" type=" xs:int " maxOccurs="1" minOccurs="1"/>
</xs:all>
</xs:complexType>
top

Complex Type: Membership

Parent type: None
Direct sub-types: None
Name Membership
Abstract no
XML Instance Representation
<...>

<ImportID> xs:string </ImportID> [1]
<ImportID_Group> xs:string </ImportID_Group> [0..1]
<GroupName> xs:string </GroupName> [0..1]
<Rights> tns:fsRights </Rights> [1]
<IsAdminGroup> xs:boolean </IsAdminGroup> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Membership">
<xs:sequence>
<-- hint="Constituent ImportID value"> -->
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<-- hint="Group ImportID value"> -->
<xs:element name="ImportID_Group" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="GroupName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Rights" type=" tns:fsRights " maxOccurs="1" minOccurs="1"/>
<xs:element name="IsAdminGroup" type=" xs:boolean " default="false" maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Memberships

Parent type: None
Direct sub-types: None
Name Memberships
Abstract no
XML Instance Representation
<...>

<Membership> tns:Membership </Membership> [1..*]
</...>
Schema Component Representation
<xs:complexType name="Memberships">
<xs:sequence>
<xs:element name="Membership" type=" tns:Membership " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: NewsCategories

Parent type: None
Direct sub-types: None
Name NewsCategories
Abstract no
XML Instance Representation
<...>

<NewsCategory> tns:NewsCategory </NewsCategory> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="NewsCategories">
<xs:sequence>
<xs:element name="NewsCategory" type=" tns:NewsCategory " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: NewsCategory

Parent type: None
Direct sub-types: None
Name NewsCategory
Abstract no
XML Instance Representation
<...>

<NewsCatID> xs:int </NewsCatID> [1]
<NewsCatTitle> xs:string </NewsCatTitle> [0..1]
<NewsCatDesc> xs:string </NewsCatDesc> [0..1]
</...>
Schema Component Representation
<xs:complexType name="NewsCategory">
<xs:sequence>
<xs:element name="NewsCatID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="NewsCatTitle" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="NewsCatDesc" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: NewsPost

Parent type: None
Direct sub-types: None
Name NewsPost
Abstract no
XML Instance Representation
<...>

<SortOrder> xs:int </SortOrder> [1]
<NewsPostID> xs:int </NewsPostID> [1]
<Title> xs:string </Title> [0..1]
<PublishDate> xs:dateTime </PublishDate> [0..1]
<Summary> xs:string </Summary> [0..1]
<HasDescription> xs:boolean </HasDescription> [0..1]
<Description> xs:string </Description> [0..1]
<Priority> xs:string (value comes from list: {'0'|'1'|'2'|'3'|'value'}) </Priority> [0..1]
<NewsCatID> xs:int </NewsCatID> [1]
<NewsCatTitle> xs:string </NewsCatTitle> [0..1]
</...>
Schema Component Representation
<xs:complexType name="NewsPost">
<xs:sequence>
<xs:element name="SortOrder" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="NewsPostID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="Title" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="PublishDate" type=" xs:dateTime " maxOccurs="1" minOccurs="0"/>
<xs:element name="Summary" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="HasDescription" type=" xs:boolean " maxOccurs="1" minOccurs="0"/>
<xs:element name="Description" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Priority" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="value"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="NewsCatID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="NewsCatTitle" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: NewsPosts

Parent type: None
Direct sub-types: None
Name NewsPosts
Abstract no
XML Instance Representation
<...>

<NewsPost> tns:NewsPost </NewsPost> [1..2000]
</...>
Schema Component Representation
<xs:complexType name="NewsPosts">
<xs:sequence>
<xs:element name="NewsPost" type=" tns:NewsPost " maxOccurs="2000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Phone

Parent type: None
Direct sub-types: None
Name Phone
Abstract no
XML Instance Representation
<...>

<PhoneType> xs:string (value comes from list: {'Home'|'Work'|'Mobile'|'School'|'Home Fax'|'Work Fax'|'School Fax'|'Billing'|'Shipping'}) </PhoneType> [1]
<PhoneNumber> xs:string </PhoneNumber> [1]
<PhoneExtension> xs:string </PhoneExtension> [0..1]
<IsPrimary> xs:boolean </IsPrimary> [0..1]
<IsSharedHousehold> xs:boolean </IsSharedHousehold> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Phone">
<xs:sequence>
<xs:element name="PhoneType" default="Home" maxOccurs="1" minOccurs="1">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="Home"/>
<xs:enumeration value="Work"/>
<xs:enumeration value="Mobile"/>
<xs:enumeration value="School"/>
<xs:enumeration value="Home Fax"/>
<xs:enumeration value="Work Fax"/>
<xs:enumeration value="School Fax"/>
<xs:enumeration value="Billing"/>
<xs:enumeration value="Shipping"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PhoneNumber" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="PhoneExtension" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="IsPrimary" type=" xs:boolean " default="1" maxOccurs="1" minOccurs="0"/>
<xs:element name="IsSharedHousehold" type=" xs:boolean " default="0" maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Phones

Parent type: None
Direct sub-types: None
Name Phones
Abstract no
XML Instance Representation
<...>

<Phone> tns:Phone </Phone> [1..*]
</...>
Schema Component Representation
<xs:complexType name="Phones">
<xs:sequence>
<xs:element name="Phone" type=" tns:Phone " maxOccurs="unbounded" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Relationship

Parent type: None
Direct sub-types: None
Name Relationship
Abstract no
XML Instance Representation
<...>

<ImportID_Person> xs:string </ImportID_Person> [0..1]
<ImportID_Related> xs:string </ImportID_Related> [0..1]
<ImportIDs_Person> tns:ImportIDs_Person </ImportIDs_Person> [0..1]
<ImportIDs_Related> tns:ImportIDs_Person </ImportIDs_Related> [0..1]
<RelationType> xs:string (value comes from list: {'Spouse'|'Parent'|'Father'|'Mother'|'Guardian'|'Son'|'Daughter'|'Step-Father'|'Step-Mother'|'Step-Son'|'Step-Daughter'|'Ward'|'Child'|'Brother'|'Sister'|'Grandparent'|'Grandfather'|'Grandmother'|'Grandchild'|'Grandson'|'Granddaughter'|'Step-Brother'|'Step-Sister'|'Uncle'|'Aunt'|'Nephew'|'Niece'|'Cousin'|'Partner'|'Sibling'|'Step-Parent'|'Step-Child'}) </RelationType> [1]
<ParentPortal> xs:boolean </ParentPortal> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Relationship">
<xs:sequence>
<xs:element name="ImportID_Person" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportID_Related" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportIDs_Person" type=" tns:ImportIDs_Person " maxOccurs="1" minOccurs="0"/>
<xs:element name="ImportIDs_Related" type=" tns:ImportIDs_Person " maxOccurs="1" minOccurs="0"/>
<xs:element name="RelationType" default="Parent" maxOccurs="1" minOccurs="1">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:enumeration value="Spouse"/>
<xs:enumeration value="Parent"/>
<xs:enumeration value="Father"/>
<xs:enumeration value="Mother"/>
<xs:enumeration value="Guardian"/>
<xs:enumeration value="Son"/>
<xs:enumeration value="Daughter"/>
<xs:enumeration value="Step-Father"/>
<xs:enumeration value="Step-Mother"/>
<xs:enumeration value="Step-Son"/>
<xs:enumeration value="Step-Daughter"/>
<xs:enumeration value="Ward"/>
<xs:enumeration value="Child"/>
<xs:enumeration value="Brother"/>
<xs:enumeration value="Sister"/>
<xs:enumeration value="Grandparent"/>
<xs:enumeration value="Grandfather"/>
<xs:enumeration value="Grandmother"/>
<xs:enumeration value="Grandchild"/>
<xs:enumeration value="Grandson"/>
<xs:enumeration value="Granddaughter"/>
<xs:enumeration value="Step-Brother"/>
<xs:enumeration value="Step-Sister"/>
<xs:enumeration value="Uncle"/>
<xs:enumeration value="Aunt"/>
<xs:enumeration value="Nephew"/>
<xs:enumeration value="Niece"/>
<xs:enumeration value="Cousin"/>
<xs:enumeration value="Partner"/>
<xs:enumeration value="Sibling"/>
<xs:enumeration value="Step-Parent"/>
<xs:enumeration value="Step-Child"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ParentPortal" type=" xs:boolean " default="true" maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Relationships

Parent type: None
Direct sub-types: None
Name Relationships
Abstract no
XML Instance Representation
<...>

<Relationship> tns:Relationship </Relationship> [1..4000]
</...>
Schema Component Representation
<xs:complexType name="Relationships">
<xs:sequence>
<xs:element name="Relationship" type=" tns:Relationship " maxOccurs="4000" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Roster

Parent type: None
Direct sub-types: None
Name Roster
Abstract no
XML Instance Representation
<...>

<RosterMembership> tns:RosterMembership </RosterMembership> [0..4000]
</...>
Schema Component Representation
<xs:complexType name="Roster">
<xs:sequence>
<xs:element name="RosterMembership" type=" tns:RosterMembership " maxOccurs="4000" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: RosterMembership

Parent type: None
Direct sub-types: None
Name RosterMembership
Abstract no
XML Instance Representation
<...>

<Name> xs:string </Name> [1]
<ImportID> xs:string </ImportID> [1]
<PlayerNumber> xs:string (length <= 3) </PlayerNumber> [0..1]
<PlayerOrder> xs:string </PlayerOrder> [0..1]
<Position> xs:string (length <= 50) </Position> [0..1]
<Captain> xs:string </Captain> [0..1]
<Coach> xs:string </Coach> [0..1]
<Locker> xs:string (length <= 10) </Locker> [0..1]
<CustomBiography> xs:string </CustomBiography> [0..1]
</...>
Schema Component Representation
<xs:complexType name="RosterMembership">
<xs:sequence>
<xs:element name="Name" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="ImportID" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="PlayerNumber" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PlayerOrder" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Position" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Captain" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Coach" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Locker" maxOccurs="1" minOccurs="0">
<xs:simpleType>
<xs:restriction base=" xs:string ">
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CustomBiography" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: School

Parent type: None
Direct sub-types: None
Name School
Abstract no
XML Instance Representation
<...>

<SchoolID> xs:int </SchoolID> [1]
<SchoolName> xs:string </SchoolName> [0..1]
</...>
Schema Component Representation
<xs:complexType name="School">
<xs:sequence>
<xs:element name="SchoolID" type=" xs:int " maxOccurs="1" minOccurs="1"/>
<xs:element name="SchoolName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Schools

Parent type: None
Direct sub-types: None
Name Schools
Abstract no
XML Instance Representation
<...>

<School> tns:School </School> [1]
</...>
Schema Component Representation
<xs:complexType name="Schools">
<xs:sequence>
<xs:element name="School" type=" tns:School "/>
</xs:sequence>
</xs:complexType>
top

Complex Type: Service

Parent type: None
Direct sub-types: None
Name Service
Abstract no
XML Instance Representation
<...>

<serviceID> xs:int </serviceID> [0..1]
<serviceName> xs:string </serviceName> [1]
<displayName> xs:string </displayName> [0..1]
<offFeedEmailList> xs:string </offFeedEmailList> [0..1]
<Feeds> tns:Feeds_out </Feeds> [0..1]
</...>
Schema Component Representation
<xs:complexType name="Service">
<xs:sequence>
<xs:element name="serviceID" type=" xs:int " maxOccurs="1" minOccurs="0"/>
<xs:element name="serviceName" type=" xs:string " maxOccurs="1" minOccurs="1"/>
<xs:element name="displayName" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="offFeedEmailList" type=" xs:string " maxOccurs="1" minOccurs="0"/>
<xs:element name="Feeds" type=" tns:Feeds_out " maxOccurs="1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Simple Type: fsEmailAddress

Parent type: xs:string (derivation method: restriction)
Direct sub-types: None
Name fsEmailAddress
Content
  • Base XSD Type: string
  • pattern = ([a-zA-Z0-9_.'/-]+(\+[a-zA-Z0-9_.'/-]+)?@([a-zA-Z0-9_./-]+\.)+[a-zA-Z]{2,}|)
Schema Component Representation
<xs:simpleType name="fsEmailAddress">
<xs:restriction base=" xs:string ">
<xs:pattern value="([a-zA-Z0-9_.'/-]+(\+[a-zA-Z0-9_.'/-]+)?@([a-zA-Z0-9_./-]+\.)+[a-zA-Z]{2,}|)"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: fsEventType

Parent type: xs:string (derivation method: restriction)
Direct sub-types: None
Name fsEventType
Content
  • Base XSD Type: string
  • value comes from list: {'Standard'|'Tournament'|'Practice'|'Scrimmage'|'Match'|'Game'|'Playoff'|'Invitational'|'Meet'}
Schema Component Representation
<xs:simpleType name="fsEventType">
<xs:restriction base=" xs:string ">
<xs:enumeration value="Standard"/>
<xs:enumeration value="Tournament"/>
<xs:enumeration value="Practice"/>
<xs:enumeration value="Scrimmage"/>
<xs:enumeration value="Match"/>
<xs:enumeration value="Game"/>
<xs:enumeration value="Playoff"/>
<xs:enumeration value="Invitational"/>
<xs:enumeration value="Meet"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: fsGender

Parent type: xs:string (derivation method: restriction)
Direct sub-types: None
Name fsGender
Content
  • Base XSD Type: string
  • value comes from list: {'Male'|'Female'|''}
Schema Component Representation
<xs:simpleType name="fsGender">
<xs:restriction base=" xs:string ">
<xs:enumeration value="Male"/>
<xs:enumeration value="Female"/>
<xs:enumeration value=""/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: fsRights

Parent type: xs:string (derivation method: restriction)
Direct sub-types: None
Name fsRights
Content
  • Base XSD Type: string
  • value comes from list: {'Admin'|'Editor'|'Member'|'Guest'}
Schema Component Representation
<xs:simpleType name="fsRights">
<xs:restriction base=" xs:string ">
<xs:enumeration value="Admin"/>
<xs:enumeration value="Editor"/>
<xs:enumeration value="Member"/>
<xs:enumeration value="Guest"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: fsStatus

Parent type: xs:string (derivation method: restriction)
Direct sub-types: None
Name fsStatus
Content
  • Base XSD Type: string
  • value comes from list: {'Active'|'Deceased'|'Lost'|''}
Schema Component Representation
<xs:simpleType name="fsStatus">
<xs:restriction base=" xs:string ">
<xs:enumeration value="Active"/>
<xs:enumeration value="Deceased"/>
<xs:enumeration value="Lost"/>
<xs:enumeration value=""/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: fsYear

Parent type: xs:string (derivation method: restriction)
Direct sub-types: None
Name fsYear
Content
  • Base XSD Type: string
  • pattern = (|(19|20)\d\d)
Schema Component Representation
<xs:simpleType name="fsYear">
<xs:restriction base=" xs:string ">
<xs:pattern value="(|(19|20)\d\d)"/>
</xs:restriction>
</xs:simpleType>
top

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

top

finalsite-specific information

  • fsSchemaCore.xsd: finalsite API core XML Schema. Contains global XML definitions (Complex and Simple Types) for finalsite API XML data.
  • fsSchema.xsd: finalsite API XML Schema file. Used for all input objects. Includes (<xs:include>) fsSchemaCore.xsd.
  • fsSchemaResult.xsd: finalsite API XML Schema response file. Defines the XML Result object which includes (<xs:include>) fsSchemaCore.xsd.
All Element declations are contained in fsSchema.xsd and fsSchemaResult.xsd. fsSchemaCore.xsd cannot be used on its own for validation of XML instances (input or output data).

Tools and utilities

  • Cygwin, a UNIX emulator for Windows.
  • cURL, a command-line utility for getting or sending data using URL syntax and methods. cURL is used for all examples throughout the documentation.
  • SOAP UI, a free, GUI-based, open source testing tool that allows you interactact with the finalsite API without having to do any programming first. This allows you to work with the API before incorporating it into the software platform of your choice.

Information about REST-based web services

  • REST, discussed at the WikiPedia