Get an assessment package

GET/assessment/{connection_id}/package/{id}

Parameters

connection_idstring required
ID of the connection
idstring required
ID of the Package

Returns

Response fieldTypeRequiredDescription
idstringNoUnique identifier for the assessment package
created_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
updated_atstring (date-time)No(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
workspace_idstringNoWorkspace ID that this package belongs to (reference to KmsSpace) (read-only)
connection_idstringNoConnection ID that this package belongs to (read-only)
integration_typesstring[]NoIntegration types that support this package
namestringNoName of the assessment package
typeenumYesValues: SKILLS_TEST, BEHAVIORAL_ASSESSMENT, VIDEO_INTERVIEW, BACKGROUND_CHECK, REFERENCE_CHECK, OTHER
aliasesstring[]NoAlternative namesidentifiers for this package
tagsstring[]NoCategory tags (e.g., "Assessment", "Background Check")
descriptionstringNoDetailed description
parametersAssessmentParameter[]NoQuestionsinputs needed for this assessment (aligned with verification)
parameters[].idstringNo
parameters[].namestringNo
parameters[].public_questionstringNoQuestion to ask the candidateuser
parameters[].typeenumNoValues: TEXT, NUMBER, MULTIPLE_CHOICE, MULTIPLE_SELECT, DATE, FILE
parameters[].optionsstring[]NoOptions for MULTIPLE_CHOICE and MULTIPLE_SELECT
parameters[].file_typesstring[]NoValid file MIME types for FILE type
parameters[].valid_regionsstring[]NoRegions where this parameter is valid ({country}-{state} or {country})
parameters[].is_requiredbooleanNo
has_redirect_urlbooleanNoWhether provider redirects user to complete assessment
has_target_urlbooleanNoWhere provider redirects user after completion
needs_ip_addressbooleanNoWhether IP address is required
max_scorenumberNoMaximum possible score if this assessment returns a score
info_urlstringNoURL to find additional information about this package
regionsAssessmentPackageRegion[]No
regions[].regionsstring[]NoCountryregion codes where this package is available ({country}-{state} or {country})
regions[].cost_amountnumberNo
regions[].currencystringNoISO 4217 format
regions[].processing_timenumberNoProcessing time in milliseconds

Errors

Errors return the HTTP status code and a JSON body with statusCode, error (the short label) and message (a human-readable detail).

{
  "statusCode": 429,
  "error": "Too Many Requests",
  "message": "Too many requests to unified.to API; max requests per minute: N"
}
StatusErrorMeaning
400Bad RequestThe request was malformed or failed validation.
401UnauthorizedThe connection is likely broken; re-authorize it.
403ForbiddenThe connection is missing permissions or scopes.
404Not FoundThe requested resource does not exist.
429Too Many RequestsRate limit exceeded (see the two sources below).
500Internal Server ErrorAn unexpected error occurred.
501Not ImplementedNot supported by this integration.

Errors from the underlying integration pass through: the integration's status comes back as ours (429, 401, 403, 404 or 5xx), usually with its message. When the integration's error body is unclear, Unified extracts what it can and returns a clearer message.

429 Too Many Requests

A 429 has two possible sources:

  • The integration's own rate limit, passed through.
  • Unified's workspace limit: a rolling 60 seconds, set by plan, with the message Too many requests to unified.to API; max requests per minute: N.
const options = {
  method: 'GET',
  url: 'https://api.unified.to/assessment/5de520f96e439b002043d8dc/package/5de520f96e439b002043d8d8',
  headers: {
    authorization: 'bearer .....'
  },

};

const results = await axios.request(options);
Are we missing anything? Let us know
Was this page helpful?