Top

Client Side Assessments

Post Client Side Initialize
POST /app/api/assessment/client_side/initialize
Initializes assessment passage by external user. This method creates new record for assessment test taken on client side. The method does not cause creation of fully-fledged PK3 user that can access PK3 site. Instead, it creates special record that holds information about client-side authenticated user.
Put User Response
PUT /app/api/assessment/client_side/response
Saves user responses to questions on the assessment test page for the test taken on client side. The assessment passage must be initialized beforehand via POST /app/api/assessment/client_side/initialize call.
Get user tags
GET /app/api/assessment/client_side/user/tags?user_external_id=:user_external_id[&account_id=:account_id]
Retrieves list of tags associated with existing external user.
Post user tags
POST /app/api/assessment/client_side/user/tags
Associates tags with the existing external user. New account tags are created if needed.
Delete user tags
DELETE /app/api/assessment/client_side/user/tags?user_external_id=:user_external_id[&account_id=:account_id]&tags=:tags
Removes association of given tags with the existing external user.
Get Assessment Tests Status
GET /app/api/assessment/client_side/results/:account_id?[user_external_id=:user_external_id][&max_records=:max_records][&start_record=:start_record][&date_since=:date_since][&tags=:tags]
Returns information about statuses of client-side assessment tests available for the API caller account or one of its subaccounts. Assessment test status records are sorted by assessment start timestamp, the latest record is first.
Get Assessment Calculated Raw Scores
GET /app/api/assessment/client_side/results/calculate/:result_id
Obtains calculated raw scores for given client-side assessment result.
Get Full PDF Report
GET /app/api/assessment/client_side/results/download/:result_id
Downloads full PDF report for given client-side assessment result.
Get Full PDF Report (Graphs Only)
GET /app/api/assessment/client_side/results/download_graph/:result_id
Downloads PDF report (graphs only) for given client-side assessment result.
Get HTML Nodes Of Summary Report
GET /app/api/assessment/client_side/results/report_summary/:result_id
Returns HTML nodes of “summary” report for given client-side assessment result.
Get Benchmark Match Scores
GET /app/api/benchmark/apply/client_side/:benchmark_id/:result_id
Returns benchmark match scores for given benchmark applied to specified completed assessment test.
Get Benchmark Report: Simple
GET /app/api/benchmark/apply/client_side/report/simple/:benchmark_id/:result_id
Downloads simple PDF report on given benchmark applied to specified completed assessment test.
Get Benchmark Report: Full
GET /app/api/benchmark/apply/client_side/report/full/:benchmark_id/:result_id
Downloads full PDF report on given benchmark applied to specified completed assessment test.

Post Client Side Initialize

POST  /app/api/assessment/client_side/initialize

Initializes assessment passage by external user. This method creates new record for assessment test taken on client side. The method does not cause creation of fully-fledged PK3 user that can access PK3 site. Instead, it creates special record that holds information about client-side authenticated user.

HTTP Form Parameters

user_external_id Data type and length
client-side user identifier (email, GUID, etc.). Must be unique within the PK3 account the user is bound to.
user_display_name Data type and length
[optional] the user display name to be used on report generation. By default, user external ID is used as display name.
account_id Data type and length
[optional] the PK3 account the user is bound to. By default, the user is bound to API caller account.
assessment_id Data type and length
assessment ID.
tags JSON array
[optional]
{
    tag_list = [...]
}
tag_list String (??)
list of tags to be associated with the user record. If the user already exists, the list of tags will be merged with the list of existing tags for this user. New account tags are created if needed.

Response: JSON array

result_id Data type and length
assessment result ID (assessment passage tracking ID).

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      "result_id": "8675"
    }


Put User Response

PUT /app/api/assessment/client_side/response

Saves user responses to questions on the assessment test page for the test taken on client side. The assessment passage must be initialized beforehand via POST /app/api/assessment/client_side/initialize call.

HTTP Form Parameters

result_id Data type and Length
assessment result ID (assessment passage tracking ID).
page_id Data type and Length
assessment page ID.
response JSON array
[
  {
      item_id,
      options = [
          {  value,  order  }, ...
      ]
  },
  ...
]
item_id Data type and Length
page item ID.
options For BAI, COGNITIVE, DISC 15, DISC 24, TEAMS, VALUES assessments: the answer options as ordered by the user:
     - value Data type and Length
answer value code
     - order Data type and Length
1-based index of answers as ordered by the user (for BAI assessments valid order values are in the range [1; 6], for TEAMS assessments valid order values are in the range [1; 5], for COGNITIVE, DISC 15, DISC 24 and VALUES assessments valid order values are in the range [1; 4]).
options For CHILDREN’S, PERCEPTUAL and SGI assessments: the answer option chosen by the user:
     - value Data type and Length
answer value code
     - order Data type and Length
must be set to 1.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

	[
	    {
	      "item_id": "Sample Return",
	      "options = [
	      	{
	      	  "value": "Sample Return", "order": "Sample Return"
	      	},
	      	...
	      	]
	    },
	    ...
	]


Get User Tags

GET  /app/api/assessment/client_side/user/tags?user_external_id=:user_external_id[&account_id=:account_id]

Retrieves list of tags associated with existing external user.

HTTP GET Parameters

User_external_id int (12)
client-side identifier of the user..
account_id int (12)
[optional] the PK3 account the user is bound to. If not specified, the user is looked up in the API caller account.

Response - JSON Array

tag_list String (?)
list of tags associated with the user record within given account.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      tag_list = [...]
    }


Post User Tags

POST  /app/api/assessment/client_side/user/tags

Associates tags with the existing external user. New account tags are created if needed.

HTTP FORM Parameters

User_external_id int (12)
client-side identifier of the user..
account_id int (12)
[optional] the PK3 account the user is bound to. If not specified, the user is looked up in the API caller account.
tags JSON array
[optional]
{
    tag_list = [...]
}
tag_list Data type and Length
list of tags to be associated with the user record.

Response: JSON Array

tags_affected String (?)
number of listed tags associated with the user.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      tags_affected 
    }


Delete User Tags

DELETE  /app/api/assessment/client_side/user/tags?user_external_id=:user_external_id
[&account_id=:account_id]&tags=:tags

Removes association of given tags with the existing external user.

HTTP GET Parameters

User_external_id int (12)
client-side identifier of the user..
account_id int (12)
[optional] the PK3 account the user is bound to. If not specified, the user is looked up in the API caller account.
tags JSON array
{
    tag_list = [...]
}
tag_list Data type and Length
list of tags to be associated with the user record.

Response - JSON Array

tags_affected String (?)
number of listed tags associated with the user.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      tags_affected 
    }


Get Assessment Tests Status

GET /app/api/assessment/client_side/results/:account_id?[user_external_id=:user_external_id] [&max_records=:max_records][&start_record=:start_record] [&date_since=:date_since][&tags=:tags]

Returns information about statuses of client-side assessment tests available for the API caller account or one of its subaccounts. Assessment test status records are sorted by assessment start timestamp, the latest record is first.

HTTP URL Parameters

account_id Data type and Length Account ID.

HTTP GET Parameters

user_external_id Data type and Length [optional] client-side user identifier. Filters assessment results, returns the results available for given user.
max_records Data type and Length [optional] the maximum number of status records returned per request. By default, the maximum number of records is set to 10000. You cannot return more than 10000 status records per request.
start_record Data type and Length [optional] index of the first record. By default, index of the first record is 0.
date_since Data type and Length [optional] [yyyy-mm-dd] filters out status records older than specified date.
tags JSON array
{
    tag_list = [...]
}
tag_list Data type and Length
list of tags to be associated with the user record.

Response: JSON Array

total_record_number Data type and Length
total number of assessment test results found that match the filters.
results Data type and Length
JSON array of assessment test status records:
  id Data type and Length
assessment result ID.
  user_external_id Data type and Length
client-side identifier of the user that took the assessment.
  assessment_id Data type and Length
assessment ID.
  date_completed Data type and Length
[yyyy-mm-dd hh:mm:ss] assessment completion timestamp.
  date_started Data type and Length
[yyyy-mm-dd hh:mm:ss] assessment start timestamp.
  status Data type and Length
assessment completion status [Completed|In Progress].
  next_page_id Data type and Length
page ID of the next assessment test page to respond.
  page_id Data type and Length
page ID of the completed test page (test pages with user responses).
  completed_on Data type and Length
[yyyy-mm-dd hh:mm:ss] page completion timestamp.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      "total_record_number": "Sample Return",
      "results = [
      	{
      	  "id": "Sample Return",
      	  "user_external_id": "Sample Return",
      	  "assessment_id": "Sample Return",
      	  "date_completed": "Sample Return",
      	  "date_started": "Sample Return",
      	  "status": "Sample Return",
      	  "next_page_id": "Sample Return",
      	  pages_completed = [ 
      	  	{ page_id, completed_on }, ...
	  	]
	  },
      	...
      	]
    }


Get Assessment Calculated Raw Scores

GET /app/api/assessment/client_side/results/calculate/:result_id

Obtains calculated raw scores for given client-side assessment test.

HTTP URL Parameters

result_id Data type and Length
assessment result ID.

Response: JSON Array

result_id Data type and Length
assessment result ID.
type Data type and Length
a JSON array, list of assessment types [bai|childrens|cognitive|disc15|disc24|perceptual|sgi|teams|values].
bai section contains ‘BAI’ assessment results:
  score_I Data type and Length
the “Inner Awareness” score.
  score_S Data type and Length
the “Social/Humanitarian” score.
  score_P Data type and Length
the “Political/EmPowerment” score.
  score_E Data type and Length
the “Economic” score.
  score_A Data type and Length
the “Artistic” score.
  score_K Data type and Length
the “Knowledge” score.
        primary_keyword Data type and Length
primary 'BAI' style.
        secondary_keyword Data type and Length
secondary 'BAI' style.
childrens section contains ‘CHILDRENS’ assessment results:
  score_D Data type and Length
the “D” score.
  score_I Data type and Length
the “I” score.
  score_S Data type and Length
the “S” score.
  score_C Data type and Length
the “C” score.
        intensity Data type and Length
DISC code
        style Data type and Length
calculated personality style.
cognitive section contains ‘COGNITIVE’ assessment results:
  score_L Data type and Length
the “Literal” score.
  score_I Data type and Length
the “Intuitive” score.
  score_T Data type and Length
the “Theoretical” score.
  score_E Data type and Length
the “Experimental” score.
        primary_keyword Data type and Length
primary 'COGNITIVE' style.
        secondary_keyword Data type and Length
secondary 'COGNITIVE' style.
disc15 section contains ‘DISC 15’ assessment results:
  score_D Data type and Length
the “D” score.
  score_I Data type and Length
the “I” score.
  score_S Data type and Length
the “S” score.
  score_C Data type and Length
the “C” score.
        intensity Data type and Length
DISC code.
        style Data type and Length
calculated personality style.
disc24 section contains ‘DISC 24’ assessment results:
  graph1_D Data type and Length
graph #1 “D” score.
  graph1_I Data type and Length
graph #1 “I” score.
  graph1_S Data type and Length
graph #1 “S” score.
  graph1_C Data type and Length
graph #1 “C” score.
  graph2_D Data type and Length
graph #2 “D” score.
  graph2_I Data type and Length
graph #2 “I” score.
  graph2_S Data type and Length
graph #2 “S” score.
  graph2_C Data type and Length
graph #2 “C” score.
  graph3_D Data type and Length
graph #3 “D” score.
  graph3_I Data type and Length
graph #3 “I” score.
  graph3_S Data type and Length
graph #3 “S” score.
  graph3_C Data type and Length
[graph #3 “C” score.
  intensity Data type and Length
DISC code.
  style Data type and Length
calculated personality style.
perceptual section contains ‘PERCEPTUAL’ assessment results:
  score_A Data type and Length
the “Auditory” score.
  score_V Data type and Length
the “Visual” score.
  score_K Data type and Length
the “Kinesthetic” score.
        primary_keyword Data type and Length
primary 'PERCEPTUAL' style.
        secondary_keyword Data type and Length
secondary 'PERCEPTUAL' style.
sgi section contains ‘SGI’ assessment results:
        score_Administration Data type and Length
the “Administration” score.
  score_Apostle Data type and Length
the “Apostle” score.
  score_Craftsman Data type and Length
the “Craftsman” score.
  score_Discernment Data type and Length
the “Discernment” score.
        score_Encouragement Data type and Length
the “Encouragement” score.
  score_Evangelist Data type and Length
the “Evangelist” score.
  score_Faith Data type and Length
the “Faith” score.
  score_Giving Data type and Length
the “Giving” score.
  score_Healing Data type and Length
the “Healing” score.
  score_Helps Data type and Length
the “Helps” score.
  score_Intercession Data type and Length
the “Intercession” score.
  score_Knowledge Data type and Length
the “Knowledge” score.
  score_Leadership Data type and Length
the “Leadership” score.
  score_Mercy Data type and Length
the “Mercy” score.
  score_Music Data type and Length
the “Music” score.
  score_Pastor Data type and Length
the “Pastor” score.
  score_Prophet Data type and Length
the “Prophet” score.
  score_Serving Data type and Length
the “Serving” score.
  score_Teacher Data type and Length
the “Teacher” score.
  score_Wisdom Data type and Length
the “Wisdom” score.
        absent_gifts Data type and Length
an array, list of absent gifts.
        present_gifts Data type and Length
an array, list of present gifts.
teams section contains ‘TEAMS’ assessment results:
  score_T Data type and Length
the “T” score.
  score_E Data type and Length
the “E” score.
  score_A Data type and Length
the “A” score.
  score_M Data type and Length
the “M” score.
  score_S Data type and Length
the “S” score.
  primary_keyword Data type and Length
primary personality style.
        secondary_keyword Data type and Length
secondary personality style.
values section contains ‘VALUES’ assessment results:
  score_L Data type and Length
the “L” score.
  score_E Data type and Length
the “E” score.
  score_P Data type and Length
the “P” score.
  score_J Data type and Length
the “J” score.
  primary_keyword Data type and Length
primary personality style.
        secondary_keyword Data type and Length
secondary personality style.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
    "result_id": "Sample Return",
    "type = ["Sample Return"],
    "bai = {
      	"score_I": "Sample Return",
	  	"score_S": "Sample Return",
	  	"score_P": "Sample Return",
	  	"score_E": "Sample Return",
	  	"score_A": "Sample Return",
	  	"score_K": "Sample Return",
	  	"primary_keyword": "Sample Return",
      	"secondary_keyword": "Sample Return"
	},
	"childrens = {
      	"score_D": "Sample Return",
	  	"score_I": "Sample Return",
	  	"score_S": "Sample Return",
	  	"score_C": "Sample Return",
	  	"intensity": "Sample Return",
      	"style": "Sample Return"
	},
	"cognitive = {
      	"score_D": "Sample Return",
	  	"score_I": "Sample Return",
	  	"score_S": "Sample Return",
	  	"score_C": "Sample Return",
	  	"primary_keyword": "Sample Return",
      	"secondary_keyword": "Sample Return"
	},
	"disc15 = {
      	"score_D": "Sample Return",
	  	"score_I": "Sample Return",
	  	"score_S": "Sample Return",
	  	"score_C": "Sample Return",
	  	"intensity": "Sample Return",
      	"style": "Sample Return"
	},
	"disc24 = {
      	"graph1_D": "Sample Return",
      	"graph1_I": "Sample Return",
      	"graph1_S": "Sample Return",
      	"graph1_C": "Sample Return",
      	"graph2_D": "Sample Return",
      	"graph2_I": "Sample Return",
        "graph2_S": "Sample Return",
      	"graph2_C": "Sample Return",
      	"graph3_D": "Sample Return",
      	"graph3_I": "Sample Return",
      	"graph3_S": "Sample Return",
      	"graph3_C": "Sample Return",
      	"intensity": "Sample Return",
      	"style": "Sample Return"
	},
	"perceptual = {
      	"score_A": "Sample Return",
	  	"score_V": "Sample Return",
	  	"score_K": "Sample Return",
	  	"primary_keyword": "Sample Return",
      	"secondary_keyword": "Sample Return"
	},
	"sgi = {
      	"score_Administration": "Sample Return",
	  	"score_Apostle": "Sample Return",
	  	"score_Craftsman": "Sample Return",
	  	"score_Discernment": "Sample Return",
	  	"score_Encouragement": "Sample Return",
	  	"score_Evangelist": "Sample Return",
	  	"score_Faith": "Sample Return",
	  	"score_Giving": "Sample Return",
	  	"score_Healing": "Sample Return",
	  	"score_Helps": "Sample Return",
	  	"score_Intercession": "Sample Return",
	  	"score_Knowledge": "Sample Return",
	  	"score_Leadership": "Sample Return",
	  	"score_Mercy": "Sample Return",
	  	"score_Music": "Sample Return",
	  	"score_Pastor": "Sample Return",
	  	"score_Prophet": "Sample Return",
	  	"score_Serving": "Sample Return",
	  	"score_Teacher": "Sample Return",
	  	"score_Wisdom": "Sample Return"
      	"absent_gifts": "Sample Return",
      	"present_gifts": "Sample Return"
	},
	"teams = {
	   "score_T": "Sample Return",
	   "score_E": "Sample Return",
	   "score_A": "Sample Return",
	   "score_M": "Sample Return",
	   "score_S": "Sample Return",
	   "primary_keyword": "Sample Return",
	   "secondary_keyword": "Sample Return"
	},
	"values = {
	   "score_L": "Sample Return",
	   "score_E": "Sample Return",
	   "score_P": "Sample Return",
	   "score_J": "Sample Return",
	   "primary_keyword": "Sample Return",
	   "secondary_keyword": "Sample Return"
	}
	
    }


Get Full PDF Report

GET /app/api/assessment/client_side/results/download/:result_id

Downloads full PDF report for given assessment result.

HTTP GET Parameters

result_id int (12)
assessment result ID.

Response: Binary Stream

Binary stream for PDF report. Content-Type: application/pdf. Content-Disposition: attachment.

Get Full PDF Report (Graphs Only)

GET /app/api/assessment/client_side/results/download_graph/:result_id

Downloads PDF report (graphs only) for given assessment result.

HTTP GET Parameters

result_id int (12)
assessment result ID.

Response: Binary Stream

Binary stream for PDF report. Content-Type: application/pdf. Content-Disposition: attachment.

Get HTML Nodes Of Summary Report

GET /app/api/assessment/client_side/results/report_summary/:result_id

Returns HTML nodes of “summary” report for given assessment result.

HTTP GET Parameters

result_id int (12)
Assessment result ID.

Response: JSON Array

result_id Data type and Length
assessment result ID.
type Data type and Length
comma separated list of assessment types [disc24 | value | teams].
report_nodes Data type and Length
the list of summary report HTML nodes.
  node_type Data type and Length
node type [disc24 | value | teams].
  node_html Data type and Length
HTML fragment that corresponds to the node.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      "result_id": "Sample Return",
      "type = [Sample Return]",
      "report_nodes = [
      	{
      	  "node_type": "Sample Return",
      	  "node_html": "Sample Return"
      	},
      	...
      ]
    }


Get Benchmark Match Scores

GET /app/api/benchmark/apply/client_side/:benchmark_id/:result_id

Returns benchmark match scores for given benchmark applied to specified completed client-side assessment test.

HTTP URL Parameters

benchmark_id int (12)
assessment result ID.
result_id int (12)
assessment result ID.

Response: JSON array

disc24_match Data type and length
“DISC 24” benchmark criteria match count.
teams_match Data type and length
“TEAMS” benchmark criteria match count.
values_match Data type and length
“VALUES” benchmark criteria match count.
total_match Data type and length
benchmark criteria total match count.

Sample Response


Status: 200 OK
Content Type: application/json;charset=UTF-8

    {
      "disc24_match": "Sample Return",
      "teams_match": "Sample Return",
      "values_match": "Sample Return",
      "total_match": "Sample Return"
    }


Get Simple PDF Benchmark Report

GET /app/api/benchmark/apply/client_side/report/simple/:benchmark_id/:result_id

Downloads simple PDF report on given benchmark applied to specified completed client-side assessment test.

HTTP URL Parameters

benchmark_id int (12)
assessment result ID.
result_id int (12)
assessment result ID.

Response: Binary Stream

Binary stream for PDF report. Content-Type: application/pdf. Content-Disposition: attachment.

Get Full PDF Benchmark Report

GET /app/api/benchmark/apply/client_side/report/full/:benchmark_id/:result_id

Downloads full PDF report on given benchmark applied to specified completed client-side assessment test.

HTTP URL Parameters

benchmark_id int (12)
assessment result ID.
result_id int (12)
assessment result ID.

Response: Binary Stream

Binary stream for PDF report. Content-Type: application/pdf. Content-Disposition: attachment.