PROFILE S OFFICE PARK 5205 LAKE SHORE DR IVE WACO, TEXAS 76710-1732 USA 254.751.1 644 WWW.PR OFILE SINTERNAT IONAL.COM COPYRIGHT 2001-2009 PROFILES INTERNATIONAL, INC.
TA B L E O F C O N T E N T S
Introduction Whats Included in this SDK Installation Running the Sample App Integrating the Sample App Database changes required for integration Integration Points Assessment Central Integration Requirements Checklist for Successful Assessment Central Implementation General Process HR-XML Assessments Messages HR-XML Assessments Use Cases Example Messages Testing Appendix A: Version History Appendix B: Differences from HR-XML Assessment Standard Values Stored in Messages Web Services vs. POST
3 5 6 8 9 9 10 12 12 14 14 15 17 27 28 29 29 30
Page 2 of 30
INTRODUCTION
Assessment Central is a rich portal providing access to a broad range of Profiles International assessments. Assessment Central is not a stand-alone website but is designed to be integrated with a clients website or processes. Assessment Central consists of four parts: a Web Service which is called to schedule Profiles Internationals assessments, a Website which takes the candidates through the assessments and collects their answers, a client-hosted callback Web Service that accepts notification when the candidate completes the assessment, and a Website which allows a client to look at a candidates assessment details include scores, reports and comparisons with other candidates and to customize the process. Assessment Centrals Web Service communication is based upon the HR-XML Assessments standard ( http://www.hr-xml.org/ ). The HR-XML Consortium is an independent, non-profit organization dedicated to the development and promotion of a standard suite of XML specifications to enable e-business and the automation of human resources-related data exchanges. The HR-XML Assessments standard sets up the following scenario allowing a Client (you) to work with an Assessment Vendor (Profiles International, Inc.) to assess a Candidate (your candidates).
Page 3 of 30
Assessment Central uses a secure connection for all communication with your application. With Assessment Central, you do not have to create any new web pages on your site. You can integrate assessments into your existing web pages and workflows. 1) During some process on your system you will make a Web Service call to Assessment Central to register your candidate for an assessment. 2) Assessment Central will return a URL and credentials that the candidate can use to take their assessment. 3) You provide a link to your candidate so that they can take the assessment. 4) When the candidate has completed the assessment you will receive notification and details describing the candidates scores on the assessments. Integrate that information into your system to help you make better decisions about the candidate. 5) Then send your employees (Hiring Manager, Department Head, etc) over to Assessment Centrals portal to view information to help you make better decisions about the candidate. Data retained on your servers: Scheduling Request some data about the scheduled assessment will be retained to allow you to send the candidate to the assessment. Data retained on our servers: Assessment Central retains information about each candidate and each scheduled assessment and retains the candidates answers and scores. Assessment Central retains any Performance Models, Scheduling Templates, and Teams that might be used in this process. Information retained on Assessment Central servers may be purged after an assessment is complete or the scheduling request has expired.
Page 4 of 30
AssessmentCentral.wsdl -
ACClient.wsdl
Page 5 of 30
INSTALLATION
The Assessment Central SDK Sample App is delivered as a single Microsoft .NET C# solution. It includes business components for communicating with Assessment Central and a Web Service for responding to callbacks from Assessment Central. These solutions were developed against the .NET Framework version 2.0 using Microsoft Visual Studio 2005. 1) Install ACSDK.Setup.msi This setup installs a sample app that demonstrates the functionalities available from the Assessment Central Web Service. 2) Create the sample database The sample application uses a database for storing scheduling information. The sample code also requires a table to store candidate information. The following script(s) will be installed in the ACSDK\Database folder during step 1. CreateDatabase.sql will create a database named ACLSampleApp and a SQL user named ACLSampleUser. You can skip this script if you have a database and user already in mind, otherwise, this must be the first script executed. Each of the remaining scripts references the ACLSampleApp database in the first line with a use statement. Candidate.sql will create tables and stored procedures used by the sample application to identify candidates. * Because the sample app needs some information that will already be in your system (like an individuals unique id, first name and last name), you may not need this table at all when you integrate with your own system. If you use your own candidate table, you will need to modify the code in GetCandidate.sql. ACSDK.sql will create tables and stored procedures used by the sample application. GetCandidate.sql contains the stored procedure that obtains a candidates name and details along with the assessments scheduled. * Because the sample app needs some information that will already be in your system (like an individuals unique id, first name and last name), you may end up modifying this single stored procedure to point to your existing data. 3) Configure the installation For ease of use there are application configuration items in the ACSampleApp\web.config file. Values for the following items will be provided by Profiles International, Inc.
<add <add <add <add <add <add key="AC key="AC key="AC key="AC key="AC key="AC Web Service URL" value=""/> Consumer ID" value=""/> Consumer User Name" value=""/> Consumer Password" value=""/> API Version" value=""/> Environment" value=""/> Page 6 of 30
There are a couple items that need to be configured in the web.config with values provided by you:
<add key="Client Owner ID" value="ClientNameOrIDHere"/> <add key="Assessment Requester" value="ClientNameHere"/>
The Client Owner ID is merely an identifier of who is responsible for defining the elements in the Client Order section of the AssessmentOrderRequest message. This could merely be your company name. The Client Order section of the AssessmentOrderRequest allows you to supply custom data that could be used for tracking like department names, purchase order numbers. This data does not have any bearing on our processing, but will be returned to you with our callback to your client-hosted Web Service, so it may be useful to you in tracking the responses. The Assessment Requester is the individual who requested the assessment. That information is tracked by Assessment Central. In the SDK, this is a single value pulled from the web.config. Your process may likely want to make this a unique value based upon on the candidate or position, but that is up to you to change.
The sample app is designed to pick up its database connection string from the same configuration file. For purposes of running the sample, fill in your connection string value here:
<connectionStrings> <add name="Default" connectionString=""/> </connectionStrings>
If you have used the CreateDatabase.sql script exactly as provided and your database in on the same server, then insert the following connection string value:
Server=(local);UID=ACLSampleUser;PWD=Password;Database=ACLSampleApp
Note: If you are using SQL Server 2000, be sure that youve configured it to support authentication based upon both SQL Server logins and Windows accounts. By default, SQL Server 2000 is setup to accept only Windows account authentication (Tools-Menu\SQL Server Configuration Properties\Security-Tab).
Page 7 of 30
Page 8 of 30
Page 9 of 30
INTEGRATION POINTS Even if you dont use any of the SDKs web pages, by using the classes provided you can save yourself considerable programming effort. For instance the RegistrationHelper class encapsulates everything needed to call our web service to schedule a candidate. Look at each of the Processes below to see if they fit your needs. Process: Scheduling a candidate Code required:
ICandidate candidate = new CandidateHelper(candidateID); string packageID = ConfigurationManager.AppSettings["Package ID"]; string assessmentRequester = ConfigurationManager.AppSettings["Assessment Requester"]; RegistrationHelper.RegisterCandidate(candidate, packageID, null, assessmentRequester);
Note: By supplying a Hashtable as the third parameter you can send additional information such as purchase order numbers or department name where the request for the assessment came from. Assessment Central will return this information to you in the AssessmentResult message when a candidate completes the assessment(s) as well as other status requests. The ACSDK does not use this information as the ReceiptID unique identifier serves as a lookup in a local database to uniquely identify the scheduling request. Process: Client is interested in a candidates progress and clicks a button on their site (or through some other automated process.) NOTE: It is possible to setup an automated reminder directly from Assessment Central, but that email would come from Profiles International and not from your company which may or may not desired. Code Required:
ICandidate candidate = new CandidateHelper(candidateID); RegistrationHelper.CheckStatus(candidate); if (candidate.Schedulings[0].Status != SchedulingStatusEnum.Completed) { //Candidate has not completed the assessment, so we could // send a gentle reminder //NOTE: Could also check candidate.Schedulings[0].ScheduledDate to // verify when the candidate was scheduled and could check // candidate.Schedulings[0].LastStatusDate to determine when the // candidate last worked on the assessment }
Page 10 of 30
Process: Sending a candidate to their assessment via email Email Content Required: URL for them to take their assessment. NOTE: When the candidate first arrives at the Profiles Assessment Center site, they will be asked to create a password to be used for re-entry. They can return and resume an assessment at any time up until the scheduling request has expired. To retrieve the URL:
ICandidate candidate = new CandidateHelper(candidateID); string URL = candidate.Schedulings[0].CandidateURL;
NOTE: Even if your implementation has more than one scheduling for the candidate, the CandidateURL in each of those Scheduling objects will have the same value. Process: Sending a candidate to their assessment via your website Code Required: You can merely place a link on your site with the candidates URL. Code to receive the URL is the same as above. Process: Receiving a callback when the candidate completes their assessment. Solution: The ACClient.asmx page could be used as is to perform this step. It merely accepts the callback and then updates the candidates scheduling status. Its possible that this may mark the candidate as having completed their assessments or may have cancelled their assessments if they have expired.
Page 11 of 30
ProductHelper.cs which uses an absolute time for synchronizing the Consumer Token across servers may cause the token to be cached longer than its usable.
Page 13 of 30
GENERAL PROCESS
HR-XML ASSESSMENTS MESSAGES Assessment Central is based upon release 2.5 of the HR-XML Assessments standard. The HRXML consortium is continuing to update their standard with additional features. We may implement those changes to support new features. The HR-XML Assessments standard provides the interface for four messages: HR-XML Message: AssessmentOrderRequest Purpose: This message is used as part of the Assess a Candidate use case. The purpose is to schedule a candidate to take an assessment. Response: This message responds with an AssessmentOrderAcknowledgement message which contains a unique ReceiptID and the URL and credentials to use to send the candidate to Assessment Central HR-XML Message: AssessmentStatusRequest Purpose: This message is used as part of the Query Assessment Status use case. The purpose it to inquire of a candidates progress if the assessment is not complete. Response: This message responds with an AssessmentResult message which contains the current status. If the status is Complete, Results will be provided. HR-XML Message: AssessmentCancelRequest Purpose: This message is used as part of the Cancel an Assessment use case. The purpose is to stop an assessment before the candidate completes it. Unstopped assessments will expire automatically, so this message is not required unless otherwise desired by the candidate. Response: This message responds with an AssessmentResult message with a status of Cancelled. HR-XML Message: AssessmentResult Purpose: This message is used as part of the Assess a Candidate use case. The purpose is to communicate a candidates completion status to the client. This message is initiated by Assessment Central and is sent to the clienthosted Web Service. Response: This message responds with an Acknowledge message which just indicates the date received.
Page 14 of 30
HR-XML ASSESSMENTS USE CASES Assess a Candidate The main process involved in any Assessment Central integration is the action of scheduling a candidate to take an assessment. The following use case diagram describes this process:
Page 15 of 30
Query Assessment Status Once a candidate has been scheduled, and youve sent them to Assessment Central to take their assessments, you dont know about their progress until they complete the assessment. If you want to check on their progress, you can ask for that information through the AssessmentStatusRequest message.
Cancel an Assessment If after a candidate has been scheduled, you want to stop the candidate from taking an assessment, you need to notify Assessment Central to stop the assessment.
Page 16 of 30
<ClientOrderId> <IdValue name="PO Number">53RR20031618</IdValue> <IdValue name="Department Name">Administration</IdValue> </ClientOrderId> The ClientOrderId node is an optional node allowing you to pass multiple arbitrary values which will be returned to you in the AssessmentResult message. The names and values are up to you to provide. <AssessmentRequester>Johnny Employer</AssessmentRequester> The assessment requester is the person at the client requesting that this candidate take an assessment. <AssessmentSubject> <SubjectId idOwner="Consumers Company Name Here"> <IdValue name="UniqueID">12345</IdValue> <IdValue name="CandidateID">12345</IdValue> </SubjectId> The SubjectID defines the unique id provided by the client. You can supply one or both of the UniqueID and CandidateID values. If both are provided, the Candidate ID value will be the one visible on screen inside Profiles Assessment Center. The UniqueID is expected to be maintained indefinitely for a candidate. The CandidateID is allowed to change over time. For example a candidate for a job may be given a candidate id by an applicant tracking system. Later when that candidate is an employee, he may be given an employee id. <PersonName script=""> <Affix type="formOfAddress">[Salutation= Mister,Misses]</Affix> <Affix type="gender">[Gender=Male,Female]</Affix> The Salutation and Gender values are optional. Profiles International assessments use pronouns and salutation in the printed reports to make the sentences flow more naturally. So if this information is not provided here, we will ask the candidate to provide it later. <FamilyName prefix="" primary="true">Assesse</FamilyName> <GivenName>Tommy</GivenName> <MiddleName></MiddleName> </PersonName> <ContactMethod> <Use>business</Use> <InternetEmailAddress>tommy.assesse@abcinc.com</InternetEmailAddress> </ContactMethod> The ContactMethod node is optional. The ContactMethod is where you would supply the candidates personal email address. Users of the Profiles Assessment Center can send candidates email reminders to complete their assessment either manually or automatically. </AssessmentSubject> <AssessmentLanguage>EN-US</AssessmentLanguage> Last Updated: 5/4/2012 Copyright 2004-2009 Profiles International, In c Page 18 of 30
AssessmentLanguage defines the language the candidate can take the assessment in. Contact your representative to determine the languages that are available to you as choices. <ResultLanguage>EN-US</ResultLanguage> The ResultLanguage defines the language that the AssessmentResult message should be returned using. <UserArea> <OwningSecurityGroup> <Name>Admin</Name> </OwningSecurityGroup> The OwningSecurityGroup node is optional. Candidates can be secured within Profiles Assessment Center so that only certain users are able to see the candidate. You can automatically place the candidate in one of those security groups by supplying the Security Group Name here. Your system will have to maintain the possible values for security groups and decide when to use each value. </UserArea> </AssessmentOrderRequest>
Page 19 of 30
AssessmentOrderAcknowledgement message:
<AssessmentOrderAcknowledgement xmlns="http://ns.hr-xml.org/2004-08-02" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.hr-xml.org/AssessmentOrderRequest.xsd"> <ClientId idOwner="Profiles International Inc"> <IdValue name="ConsumerID">[GUID]</IdValue> </ClientId> The ClientId, ProviderId, and ClientOrderId nodes here are included because the HRXML standard requires them. The original HRXML standard was based upon a One-Way communication standard and therefore these values were required in order to verify the identity of the which request this acknowledgement was for. You will not need to use these nodes in this message only. <ProviderId idOwner="Consumers Company Name Here"> <IdValue>Profiles International, Inc.</IdValue> </ProviderId> <ReceiptId idOwner="Profiles International Inc"> <IdValue>[Guid]</IdValue> </ReceiptId> The ReceiptId value will be provided upon successful completion of scheduling. This value can be used to match this scheduling request with AssessmentResult messages sent by Profiles system at a later date. <ClientOrderId idOwner="Customer Inc"> <IdValue name="PO Number">53RR20031618</IdValue> <IdValue name="Department Name">Administration</IdValue> </ClientOrderId> <AccessPoint> <Use>business</Use> <InternetWebAddress>https://www.profilesac.com/ABCDEFGHIJ</InternetWebAddress> <Description>URL for subject to access assessment.</Description> The InternetWebAddress is the unique URL for this candidate to access and take their assessments. </AccessPoint> <AssessmentStatus> <Status>Acknowledged</Status> <Details>The assessment order has been processed.</Details> <StatusDate>2003-04-24</StatusDate> </AssessmentStatus> The AssessmentStatus/Status may return Error if youve provided a bad parameter. The Details node in that case should identify the problem with the request. When the status is an error, the ReceiptId and AccessPoint nodes will not be provided. <UserArea/> </AssessmentOrderAcknowledgement>
Page 20 of 30
AssessmentCancelRequest message:
<AssessmentCancelRequest xmlns="http://ns.hr-xml.org/2004-08-02" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.hr-xml.org/AssessmentOrderRequest.xsd"> <ClientId idOwner="Profiles International Inc"> <IdValue name="ConsumerID">[GUID]</IdValue> <IdValue name="UserName">[Username]</IdValue> <IdValue name="Password">[Password]</IdValue> The ConsumerID, Username, and Password will be provided to you by Profiles <IdValue name="APIVersion">1</IdValue> <IdValue name="Environment">[Sandbox|Production]</IdValue> Use Sandbox when developing against our PubTest site. </ClientId> <ProviderId idOwner="Consumers Company Name Here"> <IdValue>Profiles International, Inc.</IdValue> </ProviderId> <ReceiptId idOwner="Profiles International Inc"> <IdValue>[Guid]</IdValue> </ReceiptId> Use the ReceiptId value provided in the AssessmentOrderAcknowledgment message to uniquely identify the scheduling to cancel. <ClientOrderId idOwner="Customer Inc"> <IdValue name="PO Number">53RR20031618</IdValue> <IdValue name="Department Name">Administration</IdValue> </ClientOrderId> <UserArea/> </AssessmentCancelRequest>
Page 21 of 30
AssessmentStatusRequest message:
<AssessmentStatusRequest xmlns="http://ns.hr-xml.org/2004-08-02" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.hr-xml.org/AssessmentOrderRequest.xsd"> <ClientId idOwner="Profiles International Inc"> <IdValue name="ConsumerID">[GUID]</IdValue> <IdValue name="UserName">[Username]</IdValue> <IdValue name="Password">[Password]</IdValue> The ConsumerID, Username, and Password will be provided to you by Profiles <IdValue name="APIVersion">1</IdValue> <IdValue name="Environment">[Sandbox|Production]</IdValue> Use Sandbox when developing against our PubTest site. </ClientId> <ProviderId idOwner="Consumers Company Name Here"> <IdValue>Profiles International, Inc.</IdValue> </ProviderId> <ReceiptId idOwner="Profiles International Inc"> <IdValue>[Guid]</IdValue> </ReceiptId> Use the ReceiptId value provided in the AssessmentOrderAcknowledgment message to uniquely identify the scheduling to cancel. <ClientOrderId idOwner="Customer Inc"> <IdValue name="PO Number">53RR20031618</IdValue> <IdValue name="Department Name">Administration</IdValue> </ClientOrderId> <UserArea/> </AssessmentStatusRequest>
Page 22 of 30
AssessmentResult message:
<AssessmentResult xmlns="http://ns.hr-xml.org/2004-08-02" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dc="http://purl.org/dc/elements/1.1/" xsi:schemaLocation="http://ns.hrxml.org/2004-08-02.xsd"> <ClientId idOwner="Profiles International, Inc."> <IdValue name="ConsumerID">[GUID]</IdValue> </ClientId> <ProviderId idOwner="Customer Inc"> <IdValue>Profiles International, Inc.</IdValue> </ProviderId> <ClientOrderId> <IdValue name="PO Number">53RR20031618</IdValue> <IdValue name="Department Name">Administration</IdValue> </ClientOrderId> <ReceiptId idOwner="Profiles International Inc"> <IdValue>[Guid]</IdValue> </ReceiptId> Match this ReceiptId value to the one provided in the AssessmentOrderAcknowledgment message to identify which candidate this message is being sent for <Results xml:lang="en-US"> <Profile>PXT3</Profile> The Profile field contains the assessment identifier for the results below. <SupportingMaterials> <Id idOwner="Profiles International, Inc."> <IdValue name="Candidate ID">12345</IdValue> </Id> This Candidate ID value is not an effective means of uniquely identifying this response. The Profiles Assessment Center user interface allows users to modify Candidate IDs in our system. Any update to that information would be presented here. Use the ReceiptId above for unique identification of the Scheduling request. <EffectiveDate> <StartDate>2004-03-08</StartDate> </EffectiveDate> The EffectiveDate shows the date the candidate completed the assessment. If multiple assessments were involved, this AssessmentResult message will not have been automatically sent until all assessments are complete. <dc:title>Assessments</dc:title> <dc:format>text/html</dc:format> <ExtendedMetadata> <dc:subject>Joe Smith</dc:subject> <dc:publisher>Profiles International Inc.</dc:publisher> <dc:date>2004-03-08</dc:date> Last Updated: 5/4/2012 Copyright 2004-2009 Profiles International, In c Page 23 of 30
This dc:date is the date of the information in this SupportingMaterials node. </ExtendedMetadata> <ReferenceInfo> <InternetWebAddress>https://www2.profilesac.com/Assessments.aspx?cid=E9B0709D2475-4f1a-A583-77A2DDDA79EE</InternetWebAddress> The InternetWebAddress is the URL that a client user could use to follow to retrieve additional information about this candidates results. The URL is secure and the user will be challenged to provide login credentials. This URL is not to be given to the candidate. </ReferenceInfo> <Comments>Access URL</Comments> </SupportingMaterials> <OverallResult> <Description>Overall Job Match</Description> <Score type="percentile">65</Score> <Scale>1-100</Scale> </OverallResult> The OverallResult node will only be available for Profiles assessments that use Performance Models for comparison. <DetailResult> <Description>Thinking Style</Description> <Score type="percentile">80</Score> <Scale>1-100</Scale> </DetailResult> <DetailResult> <Description>Behavioral Traits</Description> <Score type="percentile">60</Score> <Scale>1-100</Scale> </DetailResult> <DetailResult> <Description>Interests</Description> <Score type="percentile">50</Score> <Scale>1-100</Scale> </DetailResult> Some Profiles assessments have additional percent match values available. Those values will appear as DetailResult nodes when available. <DetailResult> <Description>Distortion</Description> <Score type="sten">1</Score> <Scale>Distortion</Scale> </DetailResult> Some Profiles assessments measure Distortion. When provided, a value of 1 is passable. A value of 0 should be noted as the candidate may not have answered consistently and other scores should not be used in a hiring decision. Last Updated: 5/4/2012 Copyright 2004-2009 Profiles International, In c Page 24 of 30
</Results> <Results xml:lang="en-US"> If multiple assessments were scheduled in a single Scheduling Template, then additional Results nodes will be returned in the AssessmentResult message. <Profile>SOS3</Profile> <SupportingMaterials> <Id idOwner="Profiles International, Inc."> <IdValue name="Candidate ID">1237712882</IdValue> </Id> <EffectiveDate> <StartDate>2004-03-06</StartDate> </EffectiveDate> <dc:title>Assessments</dc:title> <dc:format>text/html</dc:format> <ExtendedMetadata> <dc:subject>Joe Smith</dc:subject> <dc:publisher>Profiles International Inc.</dc:publisher> <dc:date>2004-03-06</dc:date> </ExtendedMetadata> <ReferenceInfo> <InternetWebAddress>https://www2.profilesac.com/Assessments.aspx?cid=E9B0709D2475-4f1a-A583-77A2DDDA79EE</InternetWebAddress> The InternetWebAddress is not specific to an assessment or scheduling and could be stored once per candidate. </ReferenceInfo> <Comments>Access URL</Comments> </SupportingMaterials> <DetailResult> <Description>Distortion</Description> <Score type="sten">0</Score> <Scale>Distortion</Scale> </DetailResult> </Results> <AssessmentStatus> <Status>Completed</Status> <Details>Candidate has completed the assessment</Details> <StatusDate>2003-04-05</StatusDate> </AssessmentStatus> If the AssessmentResult message is sent automatically to your web service, then the status will be Completed. If you request status, you may also find the status to be either Scheduled or InProgress. Other possible values are Cancelled or Error. <AssessmentLanguage>en-us</AssessmentLanguage> <UserArea/> </AssessmentResult>
Page 25 of 30
Acknowledge message:
<Acknowledge> <ApplicationAcknowledgement> <PayloadResponseSummary> <TransportMessageId> <MessageIdType>ShowAssessmentResult</MessageIdType> <MessageId> <IdValue name="ConsumerID">[GUID]</IdValue> </MessageId> The MessageId value should be the value of your ConsumerId </TransportMessageId> <UniquePayloadTrackingId idOwner="Profiles International Inc"> <IdValue>[Guid]</IdValue> The UniquePayloadTrackingId is the ReceiptId value. </UniquePayloadTrackingId> <TransactionReceiptTimestamp >[TodaysDate]</TransactionReceiptTimestamp> Three places in the Acknowledge message require a properly formated date time stamp string (example: 5/1/2008 8:30:52 AM) <AcknowledgementCreationTimestamp >[TodaysDate]</AcknowledgementCreationTimestamp> <ReceivedPayloadSummary> <ReceivedPayloadSchemaURI>http://ns.hr-xml.org/2_5/HR-XML2_5/StandAlone/AssessmentResult.xsd</ReceivedPayloadSchemaURI> <EntityInfo> <EntityInstanceAxisXPath >/AssessmentResult</EntityInstanceAxisXPath> <Count>1</Count> <EntityShortName>AssessmentResult</EntityShortName> </ReceivedPayloadSummary> <ProcessingTimestamp description="Complete" >[TodaysDate]</ProcessingTimestamp> </PayloadResponseSummary> <PayloadDisposition> <EntityIdentifier> <IdValue name="PO Number">53RR20031618</IdValue> <IdValue name="Department Name">Administration</IdValue> </EntityIdentifier> </PayloadDisposition> </ApplicationAcknowledgement> </Acknowledge>
Page 26 of 30
TESTING
When developing an Assessment Central implementation, Profiles International provides a set of PubTest servers with which you can test and re-test your integration. For successful testing, youll need to create a test environment that is available outside of your firewall. Youll need to provide Profiles International with a URL of your callback Web Service (that handles the ShowAssessmentResult HR-XML message) so that we can send you notifications when candidates complete their assessment. Profiles International personnel needs to verify functionality before you can move your code to production. You cannot point your Production Application against our PubTest Assessment Central servers. The candidate results will be marked temporary and you could lose access to your candidates data, so its important that you only point a Production Application against our Production Assessment Central servers.
Page 27 of 30
Page 28 of 30
The idOwner attribute identifies the organization which will define the fields inside this element that will be used to identify the client (you). Therefore for Assessment Central, Profiles International Inc. is the owner and weve established the following information needs to be included in this section of the request:
<ClientId idOwner="Profiles International, Inc."> <IdValue name="ConsumerID">C68CE8BF-40DF-400f-8741-01B959B4A716</IdValue> <IdValue name="UserName">username</IdValue> <IdValue name="Password">pwd</IdValue> <IdValue name="APIVersion">1</IdValue> <IdValue name="Environment">Sandbox</IdValue> </ClientId>
The EntityIDType allows for multiple IdValue elements and uses them in many situations. Profiles has used these multiple pieces of data to uniquely identify requests that originate from its clients.
Page 29 of 30
WEB SERVICES VS. POST The HR-XML consortium has been around for a while and some of its standards pre-date Web Services as a protocol for inter-computer communication. As such the HR-XML Assessments version 2.5 standard did not have an ratified Web Service interface. Our Web Service is based upon their proposal for a Web Service interface. In both cases, the protocol is merely a transport for the HR-XML Assessments messages such as AssessmentOrderRequest.
Page 30 of 30