Table of Contents

Talentsoft Recruiting Marketplace

Authentication

Everything about authentication and how to get a token

Get an access token as a user.

Implementation of this method by the partner is not required.

Call the /token endpoint. The grant_type must be 'urn:ietf:params:oauth:grant-type:jwt-bearer'. You must provide an assertion with a valid JWT token. The JWT token must contain a iss claim with the client ID provided by Talentsoft. The signature is generated with a client secret exchanged between Talentsoft and the partner. Example :

POST /token HTTP/1.1
Content-Type: application/x-www-form-urlencoded

grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&
assertion=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJjbGllbnRfaWQiLCJhdWQiOiJodHRwczovL2FwaS5zaXRlLmNvbSIsInN1YiI6IlRhbGVudFNvZnRNYXJrZXRQbGFjZSIsImV4cCI6MTUyMDE4MjEzMCwiaWF0IjoxNTIwMTgwOTMwLCJlbWFpbCI6ImplYW4uZHVwb250QHNpdGUiLCJuYW1lIjoiSmVhbiBEdXBvbnQifQ.PlwMiXNBMqi_GKfa-kN8BLm2zQ6mqMeqGaDRsShZOjA

Response :

{
  "access_token": "2YotnFZFEjr1zCsicMWpAA",
  "token_type": "bearer",
  "expires_in": "3600"
}

Get an access token as an application.

Implementation of this method by the partner is required.

Call the /token endpoint. The grant_type must be 'client_credentials'. You must provide a client_id and a client_secret provided by Talentsoft. Example :

POST /token HTTP/1.1
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&
client_id=428a51ae-0387-43ab-8c64-cf026f77656f&
client_secret=26a5c010885148d1afe2d535cb3e9ffaacbc714597bb4abdb2a6fca6d16658bf

Response :

{
  "access_token": "2YotnFZFEjr1zCsicMWpAA",
  "token_type": "bearer",
  "expires_in": "3600"
}

Use the access token

Authenticated requests must contains the Authorization header with the bearer access token Example :

GET /videos/campaigns HTTP/1.1
Host: api.partner.com

Authorization: Bearer <access_token>

How to identify a user ?

An user is identifiable by his email. In all calls made by a user the HTTP header X-Current-User is added with the user's email address.

If you have implemented the retrieval of an access token per user (with the grant type urn:ietf:params:oauth:grant-type:jwt-bearer) the JWT token payload contains the user's email in the field email. The content of the JWT is not encrypted, it is just encoded in base64, so you can read it without the need for the secret key. The secret key is only used to validate the JWT signature.

token

Get an access token

Call this endpoint to acquire a 'bearer' access token that allows you to perform calls to the APIs. The parameters should be provided in the URL encoded format in the body of the request.

Request
POST /token
Parameters
Name Type Default Notes
*grant_type

The grant type which must be 'urn:ietf:params:oauth:grant-type:jwt-bearer' to authenticate as a user or 'client_credentials' to authenticate as an application. See https://tools.ietf.org/html/rfc7523

assertion

Required with urn:ietf:params:oauth:grant-type:jwt-bearer grant type. A JWT token, see https://jwt.io/ The JWT Header must be { "alg": "HS256", "typ": "JWT" } The JWT Payload must be composed of :

  • iss (Issuer) Claim with a client ID provided by Talentsoft to identify the customer.
  • aud (Audience) Claim with the URL of the partner API endpoint.
  • sub (Subject) Claim with 'TalentSoftMarketPlace' value.
  • exp (Expiration Time) Claim with the expiration value. 20 minutes by default.
  • iat (Issued At) Claim with the creation date of the token.
  • email Claim with the email address of the user.
  • name Claim with the name of the user.

Example : {"iss":"client_id","aud":"https://api.site.com","sub":"TalentSoftMarketPlace","exp":1520182130,"iat":1520180930,"email":"jean.dupont@site","name":"Jean Dupont"}

The JWT Signature of the encoded header and the encoded payload whith HS256 algorithm and a secret key exchanged between the partner and Talentsoft. Each part of the JWT token must be encoded in Base64 Example : eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJjbGllbnRfaWQiLCJhdWQiOiJodHRwczovL2FwaS5zaXRlLmNvbSIsInN1YiI6IlRhbGVudFNvZnRNYXJrZXRQbGFjZSIsImV4cCI6MTUyMDE4MjEzMCwiaWF0IjoxNTIwMTgwOTMwLCJlbWFpbCI6ImplYW4uZHVwb250QHNpdGUiLCJuYW1lIjoiSmVhbiBEdXBvbnQifQ.PlwMiXNBMqi_GKfa-kN8BLm2zQ6mqMeqGaDRsShZOjA

The partner must verify the validity of the JWT token (signature / issuer / expiration / ...) !

client_id

Required with client_credentials grant type. The client id provided by Talentsoft.

client_secret

Required with client_credentials grant type. The client secret key provided by Talentsoft.

X-Current-User

The e-mail of the user connected. The header is not always filled in and if it is not present it should not block authentication as an application (for batch or callback where there are no users connected).

Responses
Status Code Type Description Samples
200 TokenResult

Access token response, see https://tools.ietf.org/html/rfc6749#section-5.1 The access_token must be pass to other call in the Authorization header as Bearer token like Authorization: Bearer <access_token>

400 oAuthError

Bad request

401 oAuthError

Unauthorized

VideoInterview

VideoInterview API

Assessment

Assessment API

Matching

Matching API DRAFT The purpose of this specification is to define the APIs that the partner must develop to integrate the recruitment matching marketplace. The supported scenarios must be:

  • To be able to match candidates on an vacancy
  • Be able to match vacancies on a candidate

Partners must index vacancies and candidates (CVs) using Talentsoft's back-office APIs.

candidates

Lists the most appropriate candidates who match an offer.

The goal is to bring up the candidates ordered by score that best correspond to a given offer. When the recruiter arrives on the matching tab of an offer, a request will be sent directly to the partner to list the most appropriate candidates. Afterwards the recruiter can add tags and/or mandatoryTags from the partner or filters on his repository to refine the result.

The value paths in the JSONs are not yet definitive and are provided for information purposes only.

The implementation of filters on Talentsoft data is not mandatory but highly recommended.

Example of query :

https://partner/api/match?language=fr-FR&vacancyReference=2019-hr&tags[]=manager&tags[]=english_fluent&mandatoryTags[]=marketing&applicantType=both&location=48.8534|2.3488|10&experienceLevel[]=beginner&experienceLevel[]=2years&educationLevel[]=bac5&educationLevel[]=bac4&profile[]=manager&profile[]=recruiter&hideApplicantAppliedOnOffer=0&hideApplicantInProgress=0&offset=0&limit=50
Request
GET /matching/candidates?vacancyReference[&language&tags&mandatoryTags&applicantType&location&experienceLevel&educationLevel&profile&hideApplicantAppliedOnOffer&hideApplicantInProgress&onlyApplicantAppliedOnOffer&offset&limit]
Parameters
Name Type Default Notes
*vacancyReference

The reference of the offer on which the matching will be performed. JSON path in the offer detail : $.offerDetail.reference

language

The language of recruiter. The parameter must be the culture name in the format languagecode2-country. languagecode2 is a lowercase two-letter code derived from ISO 639-1. country is derived from ISO 3166 and usually consists of two uppercase letters. Example : 'fr-FR', 'en-GB', ...

tags

An array of tag IDs / skills provided by the partner to be able to filter the matching results. Example : tags[]=manager&tags[]=english_fluent

mandatoryTags

An array of tag IDs / skills provided by the partner to be able to filter the matching results. Example : mandatoryTags[]=manager&mandatoryTags[]=english_fluent

applicantType

Type of candidates to be reported, candidates, employees or both. By default, candidates and employees will be put back together. The filter is based on Talentsoft data. JSON path in the applicant detail : $.isEmployee

location

Latitude, longitude and radius in kilometres to filter candidates by location. The format is || Example : 48.856614|2.3522219|10

experienceLevel

Array of experience level ID to return only candidates whose experience level matches at least one of the filter values. The filter is based on Talentsoft data. JSON path in the applicant detail : $.candidateDetail.globalExperience.globalExperienceLevel.id Example : experienceLevel[]=beginner&experienceLevel[]=2years

educationLevel

Array of level of study ID to return only candidates whose level of study matches at least one of the filter values. The filter is based on Talentsoft data. JSON path in the applicant detail : $.candidateDetail.educations[].educationLevel.id Example : educationLevel[]=bac5&educationLevel[]=bac4

profile

Array of job ID to filter candidates whose job matches the job you are looking for. The filter is based on Talentsoft data. JSON path in the applicant detail : $.candidateDetail.positionSought.primaryProfile.id

hideApplicantAppliedOnOffer False

Flag to hide candidates who have already applied for the offer. The filter is based on Talentsoft data. JSON path in the applicant detail : $.applications[].vacancyReference

hideApplicantInProgress False

Flag to hide candidates who already have an application in progress. The filter is based on Talentsoft data. JSON path in the applicant detail : $.isInProgress

onlyApplicantAppliedOnOffer False

Flag to display only candidates who have applied for the offer. The filter is based on Talentsoft data. JSON path in the applicant detail : $.applications[].vacancyReference

offset 0

Index of the first candidate to be returned (0 based, for pagination).

limit 50

Number of candidates to be returned (page size - 50 by default).

X-Current-User

The e-mail of the user connected.

Responses
Status Code Type Description Samples
200 ResultMatchingCandidate

The list of candidates sorted by decreasing relevance corresponding to the search.

Mime type: application/json
{
  "code": "200",
  "status": "success",
  "message": null,
  "data": {
    "vacancyReference": "2019-hr",
    "tags": [
      {
        "id": "manager",
        "label": "Manageur",
        "category": "Profil",
        "isMandatory": true
      },
      {
        "id": "english_fluent",
        "label": "Anglais courant",
        "category": "Langage",
        "isMandatory": false
      }
    ],
    "suggestedTags": [
      {
        "id": "france",
        "label": "France",
        "category": "Pays"
      },
      {
        "id": "java_expert",
        "label": "Expert Java",
        "category": "Dev"
      }
    ],
    "applicants": [
      {
        "applicant_id": "18eaabd2-36f3-49b4-b83f-d01d25df60d2",
        "score": 85,
        "matchingCriterias": [
          {
            "label": "Manageur",
            "match": true,
            "weight": 5
          },
          {
            "label": "Anglais courant",
            "match": true,
            "weight": 0
          }
        ],
        "freeInfos": [
          "Arts martiaux",
          "Humanitaire"
        ]
      },
      {
        "applicant_id": "9dcb7a40-3996-4c2c-8b0b-bc84105d4761",
        "score": 80,
        "matchingCriterias": [
          {
            "label": "Manageur",
            "match": true,
            "weight": 5
          },
          {
            "label": "Anglais courant",
            "match": false,
            "weight": 0
          }
        ],
        "freeInfos": [
          "Yoga"
        ]
      }
    ],
    "content-range": "0-2/25"
  }
}
400 Result

Bad request If the offer reference is missing, the error message must be 'MA01 : The offer reference is missing.' If the offer does not exists, the error message must be 'MA02 : Offer not found.' If the limit exceeds the maximum number of items to be returned, the error message must be 'PA01 : The number of items to be returned exceeds the authorized limit.'

Mime type: application/json
{
  "code": "400",
  "status": "error",
  "message": "MA01 : The offer reference is missing."
}
401 Result

Unauthorized If the access token is not present the error message must be 'AE01 : No access token.' If the access token is expired the error message must be 'AE02 : Token expired.' If the access token is invalid the error message must be 'AE03 : Invalid access token.'

Mime type: application/json
{
  "code": "401",
  "status": "error",
  "message": "AE02 : Token expired."
}

Vacancies

Lists the most appropriate vacancies who match an candidate.

The goal is to bring up the vacancies ordered by score that best correspond to a given candidate. When the recruiter arrives on the matching tab of a candidate, a request will be sent directly to the partner to list the most appropriate vacancies. Afterwards the recruiter can add tags and/or mandatoryTags from the partner or filters on his repository to refine the result.

The value paths in the JSONs are not yet definitive and are provided for information purposes only.

The implementation of filters on Talentsoft data is not mandatory but highly recommended.

Example of query :

https://partner/api/offermatch?language=fr-FR&applicantId=328a0cef-32a9-445c-af76-20332f3d259d&tags[]=manager&tags[]=english_fluent&mandatoryTags[]=marketing&location=48.8534|2.3488|10&profile[]=manager&profile[]=recruiter&status[]=_TS_CO_OfferStatus_Valide&status[]=_TS_CO_OfferStatus_Published&contractType=_TS_CO_Contract_CDD&hideApplicantAppliedOnOffer=1&onlyApplicantAppliedOnOffer=0&publishedOnIntranet=0&PublishedOnInternet=1&offset=0&limit=50
Request
GET /matching/vacancies?applicantId[&language&tags&mandatoryTags&location&profile&status&contractType&hideApplicantAppliedOnOffer&onlyApplicantAppliedOnOffer&publishedOnIntranet&publishedOnInternet&offset&limit]
Parameters
Name Type Default Notes
*applicantId

The identifier of the candidate on whom the matching is to be done. JSON path in the applicant detail : $.candidateInformation.id

language

The language of recruiter. The parameter must be the culture name in the format languagecode2-country. languagecode2 is a lowercase two-letter code derived from ISO 639-1. country is derived from ISO 3166 and usually consists of two uppercase letters. Example : 'fr-FR', 'en-GB', ...

tags

An array of tag IDs / skills provided by the partner to be able to filter the matching results. Example : tags[]=manager&tags[]=english_fluent

mandatoryTags

An array of tag IDs / skills provided by the partner to be able to filter the matching results. Example : mandatoryTags[]=manager&mandatoryTags[]=english_fluent

location

Latitude, longitude and radius in kilometres to filter candidates by location. The format is || Example : 48.856614|2.3522219|10

profile

Array of job ID to filter vacancies whose job matches the job you are looking for. The filter is based on Talentsoft data. JSON path in the offer detail : $.offerDetail.jobDescription.primaryProfile.id

status

Array of status ID to return only vacancies whose status matches at least one of the filter values. The filter is based on Talentsoft data. JSON path in the offer detail : $.offerDetail.status.id Example : status[]=_TS_CO_OfferStatus_Valide&status[]=_TS_CO_OfferStatus_Published

contractType

Contract type of the vacancies to be returned. The filter is based on Talentsoft data. JSON path in the offer detail : $.offerDetail.jobDescription.contractType.id

hideApplicantAppliedOnOffer

Flag to hide vacancies where the candidate has already applied. The filter is based on Talentsoft data. JSON path in the applicant detail : $.applications[].vacancyReference

onlyApplicantAppliedOnOffer

Flag to return only the vacancies where the candidate has applied. The filter is based on Talentsoft data. JSON path in the applicant detail : $.applications[].vacancyReference

publishedOnIntranet

Filter to display only vacancies published internally. The filter is based on Talentsoft data. JSON path in the offer detail : $.offerDetail.publishedOnIntranet

publishedOnInternet

Filter to display only offers published on the Internet. The filter is based on Talentsoft data. JSON path in the offer detail : $.offerDetail.publishedOnInternet

offset 0

Index of the first vacancy to be returned (0 based, for pagination).

limit 50

Number of vacancies to be returned (page size - 50 by default).

X-Current-User

The e-mail of the user connected.

Responses
Status Code Type Description Samples
200 ResultMatchingVacancies

The list of vacancies sorted by decreasing relevance corresponding to the search.

Mime type: application/json
{
  "applicant_id": "328a0cef-32a9-445c-af76-20332f3d259d",
  "tags": [
    {
      "id": "manager",
      "label": "Manageur",
      "category": "Profil",
      "isMandatory": true
    },
    {
      "id": "english_fluent",
      "label": "Anglais courant",
      "category": "Langage",
      "isMandatory": false
    }
  ],
  "suggestedTags": [
    {
      "id": "france",
      "label": "France",
      "category": "Pays"
    },
    {
      "id": "java_expert",
      "label": "Expert Java",
      "category": "Dev"
    }
  ],
  "vacancies": [
    {
      "vacancyReference": "2019-hr",
      "score": 85,
      "matchingCriterias": [
        {
          "label": "Manageur",
          "match": true,
          "weight": 5
        },
        {
          "label": "Anglais courant",
          "match": true,
          "weight": 0
        }
      ],
      "freeInfos": [
        "best place to work",
        "babyfoot"
      ]
    },
    {
      "vacancyReference": "2019-manager",
      "score": 80,
      "matchingCriterias": [
        {
          "label": "Manageur",
          "match": true,
          "weight": 5
        },
        {
          "label": "Anglais courant",
          "match": false,
          "weight": 0
        }
      ],
      "freeInfos": [
        "IT"
      ]
    }
  ],
  "content-range": "0-2/25"
}
400 Result

Bad request If the candidate identifier is missing, the error message must be 'MA03 : The candidate identifier is missing.' If the candidate does not exists, the error message must be 'MA04 : Candidate not found.' If the limit exceeds the maximum number of items to be returned, the error message must be 'PA01 : The number of items to be returned exceeds the authorized limit.'

Mime type: application/json
{
  "code": "400",
  "status": "error",
  "message": "MA03 : The candidate identifier is missing."
}
401 Result

Unauthorized If the access token is not present the error message must be 'AE01 : No access token.' If the access token is expired the error message must be 'AE02 : Token expired.' If the access token is invalid the error message must be 'AE03 : Invalid access token.'

Mime type: application/json
{
  "code": "401",
  "status": "error",
  "message": "AE02 : Token expired."
}

Talentsoft callbacks

API developed by Talentsoft to be notified of status changes.

Definitions

TokenResult

Name Type Notes
access_token string

The access token.

token_type string

The type of the token issued. Must be 'bearer'

expires_in number

The lifetime in seconds of the access token. For example, the value '3600' denotes that the access token will expire in one hour from the time the response was generated.

oAuthError

Name Type Notes
error string

The error code. Must be 'invalid_grant' if the grant type is 'urn:ietf:params:oauth:grant-type:jwt-bearer' and the JWT token is invalid. Must be 'invalid_request' if the grant type is missing OR the assertion is missing with 'urn:ietf:params:oauth:grant-type:jwt-bearer' grant type OR client id or client secret are missing with 'client_credentials' grant type OR unexpected error. Must be 'unsupported_grant_type' if the grant type is different from 'client_credentials' OR 'urn:ietf:params:oauth:grant-type:jwt-bearer'. Must be 'invalid_client' when client authentication failed.

error_description string

Human-readable text providing additional information, used to assist the client developer in understanding the error that occurred. In the case of 'urn:ietf:params:oauth:grant-type:jwt-bearer' grant type, the standard error messages regarding the reasons the JWT was considered invalid : Standard error messages :

  • IG01 : Unknown client ID (iss).
  • IG02 : Unknown recruiter email.
  • IG03 : Signature validation failed.
  • IG04 : Audience validation failed.
  • IG05 : Token expired.
  • IG99 : Other . In other cases the standard error messages are as follows :
  • IT01 : The grant_type is required.
  • IT02 : Unsupported grant_type.
  • IT03 : The assertion is required with 'urn:ietf:params:oauth:grant-type:jwt-bearer' grant_type.
  • IT04 : The client_id is required with 'client_credentials' grant_type.
  • IT05 : The client_secret is required with 'client_credentials' grant_type.
  • IT06 : Client authentication failed.

ResultMatchingCandidate

Name Type Notes
code integer

Contains the HTTP response status code as an integer.

status string

Contains the text: “success”, “fail”, or “error”. Where “fail” is for HTTP status response values from 500-599, “error” is for statuses 400-499, and “success” is for everything else (e.g. 1XX, 2XX and 3XX responses).

message string

Only used for “fail” and “error” statuses to contain the error message. Standard error messages are :

  • AE01 : No access token.
  • AE02 : Access token expired.
  • AE03 : Invalid access token.
  • IW01 : The candidate has already had a video interview on this campaign.
  • IW02 : Candidate not found.
  • IW03 : The campaign does not exist.
  • IW04 : Language not supported.
  • MA01 : The offer reference is missing.
  • MA02 : Offer not found.
  • MA03 : The candidate identifier is missing.
  • MA04 : Candidate not found.
  • PA01 : The number of items to be returned exceeds the authorized limit.
data MatchingCandidatesResponse[]

The matching result.

MatchingCandidatesResponse

The matching result.

Name Type Notes
vacancyReference string

The reference of the offer on which the matching was performed. JSON path in the offer detail : $.offerDetail.reference

tags MatchingTag[]

The list of partner tags/skills that were applied to the search.

suggestedTags MatchingTag[]

The list of tags/skills suggested by the partner.

applicants MatchingApplicant[]

The list of candidates corresponding to the matching request sorted by decreasing score.

content-range string

Pagination information in [offset]-[limit]/[total count] format.

MatchingTag

The list of partner tags/skills that were applied to the search.

Name Type Notes
id string

The tag identifier. It is the tag identifier that will be sent as a parameter of the matching request to filter the results.

label string

The label of the tag in the requested language.

category string

The tag category. It is only a label in the requested language that allows to group tags of the same type.

isMandatory boolean

Indicates whether the tag is mandatory for the candidate to appear in the results.

MatchingApplicant

The list of candidates corresponding to the matching request sorted by decreasing score.

Name Type Notes
applicant_id string

The UUID of the candidate. JSON path in the applicant detail : $.candidateInformation.id

score integer

The matching score in %

matchingCriterias MatchingCriteria[]

The list of criteria that match or not. This information will be used to explain why candidates are present in the result and the relevance of the result.

freeInfos array

An array of strings in the requested language containing free information from the partner.

MatchingCriteria

The list of criteria that match or not. This information will be used to explain why candidates are present in the result and the relevance of the result.

Name Type Notes
label string

The label of the criteria in the requested language.

match boolean

True if the element of the result matches the criteria, false if not.

weight string

Weight of the criteria.

Result

Name Type Notes
code integer

Contains the HTTP response status code as an integer.

status string

Contains the text: “success”, “fail”, or “error”. Where “fail” is for HTTP status response values from 500-599, “error” is for statuses 400-499, and “success” is for everything else (e.g. 1XX, 2XX and 3XX responses).

message string

Only used for “fail” and “error” statuses to contain the error message. Standard error messages are :

  • AE01 : No access token.
  • AE02 : Access token expired.
  • AE03 : Invalid access token.
  • IW01 : The candidate has already had a video interview on this campaign.
  • IW02 : Candidate not found.
  • IW03 : The campaign does not exist.
  • IW04 : Language not supported.
  • MA01 : The offer reference is missing.
  • MA02 : Offer not found.
  • MA03 : The candidate identifier is missing.
  • MA04 : Candidate not found.
  • PA01 : The number of items to be returned exceeds the authorized limit.

ResultMatchingVacancies

Name Type Notes
code integer

Contains the HTTP response status code as an integer.

status string

Contains the text: “success”, “fail”, or “error”. Where “fail” is for HTTP status response values from 500-599, “error” is for statuses 400-499, and “success” is for everything else (e.g. 1XX, 2XX and 3XX responses).

message string

Only used for “fail” and “error” statuses to contain the error message. Standard error messages are :

  • AE01 : No access token.
  • AE02 : Access token expired.
  • AE03 : Invalid access token.
  • IW01 : The candidate has already had a video interview on this campaign.
  • IW02 : Candidate not found.
  • IW03 : The campaign does not exist.
  • IW04 : Language not supported.
  • MA01 : The offer reference is missing.
  • MA02 : Offer not found.
  • MA03 : The candidate identifier is missing.
  • MA04 : Candidate not found.
  • PA01 : The number of items to be returned exceeds the authorized limit.
data MatchingVacanciesResponse[]

The matching result.

MatchingVacanciesResponse

The matching result.

Name Type Notes
applicant_id string

The identifier of the candidate on whom the matching was performed. JSON path in the applicant detail : $.candidateInformation.id

tags MatchingTag[]

The list of partner tags/skills that were applied to the search.

suggestedTags MatchingTag[]

The list of tags/skills suggested by the partner.

vacancies MatchingVacancy[]

The list of candidates corresponding to the matching request sorted by decreasing score.

content-range string

Pagination information in [offset]-[limit]/[total count] format.

MatchingVacancy

The list of candidates corresponding to the matching request sorted by decreasing score.

Name Type Notes
vacancyReference string

The vacancy reference JSON path in the offer detail : $.offerDetail.reference

score integer

The matching score in %

matchingCriterias MatchingCriteria[]

The list of criteria that match or not. This information will be used to explain why vacancies are present in the result and the relevance of the result.

freeInfos array

An array of strings in the requested language containing free information from the partner.