Manage Person Profile

Person Profile is a profile type that you create for individual workers to track their skills, qualifications, accomplishments, and career preferences. Profiles are valuable for tracking employees' skills, competencies, and accomplishments, and for various talent management activities, such as career planning, identifying training needs, performance management, and in the recruitment process to identify job requirements and suitable applicants.

You can use the talentPersonProfiles resource to view and manage the profile of a person. This resource supports the features of enhanced talent profiles and enables you to add content items for the following content sections. You can also add areas of expertise, areas of interest, favorite links, and tags to an employee's profile.

  • Accomplishments
  • Career Preferences
  • Licenses and Certifications
  • Competencies
  • Degrees (Education)
  • Honors and Awards
  • Languages
  • Memberships
  • Skills
  • Special Projects
  • Work Preferences
  • Work History

Let's discuss these scenarios:

  • Add an Area of Interest for Self
  • Add an Area of Expertise for Self
  • Add a Competency for a Worker
  • Add a Skill for a Worker
  • Create a Worker Profile with Competencies and Accomplishments

Add an Area of Interest for Self

Let's say that an employee, Marc wants to add his new area of interest to his public directory profile, which is viewable in the company's directory.

To add a new area of interest for self:

  1. Query (GET) the person profile by using a query parameter such as person number for self (for example, /talentPersonProfiles?q=PersonNumber='305688') and retrieve the collection URL for the areasOfInterest child resource.
  2. Perform a POST operation on this URL, providing the area of interest in the request body.
  3. Verify the profile details returned in the response.

Example URL

Use this resource URL format.

POST
/hcmRestApi/resources/11.13.18.05/talentPersonProfiles/{PersonId}/child/areasOfInterest

Example Request

Here's an example of the request body in JSON format.

{
  "Interest": "Rock Climbing"
}

Example Response

Here's an example of the response body in JSON format.

{
  "InterestId": 300100216363778,
  "Interest": "Rock Climbing",
  "CreatedBy": "ANC_ZBEN_US_EMPLOYEE01",
  "CreationDate": "2020-08-20T03:33:19+00:00",
  "LastUpdatedBy": "ANC_ZBEN_US_EMPLOYEE01",
  "LastUpdateDate": "2020-08-20T03:33:19.022+00:00",
  "links": [
      ...]
}

Add an Area of Expertise for Self

Let's say that Marc wants to add his new professional expertise to his public directory profile, which is viewable in the company's directory.

To add a new area of expertise for self:

  1. Query (GET) the person profile by using a query parameter such as person number for self (for example, /talentPersonProfiles?q=PersonNumber='305688') and retrieve the collection URL for the areasOfExpertise child resource.
  2. Perform a POST operation on this URL, providing the area of expertise in the request body.
  3. Verify the profile details returned in the response.

Example URL

Use this resource URL format.

POST
/hcmRestApi/resources/11.13.18.05/talentPersonProfiles/{PersonId}/child/areasOfExpertise

Example Request

Here's an example of the request body in JSON format.

{
  "Expertise":"Java"
}

Example Response

Here's an example of the response body in JSON format.

{
  "ExpertiseId": 300100216363772,
  "Expertise": "Java",
  "CreatedBy": "ANC_ZBEN_US_EMPLOYEE01",
  "CreationDate": "2020-08-20T03:30:44+00:00",
  "LastUpdatedBy": "ANC_ZBEN_US_EMPLOYEE01",
  "LastUpdateDate": "2020-08-20T03:30:46.718+00:00",
  "links": [
      ...]
}

Add Competencies and Skills for a Worker

To add competencies and skills for a worker, you need to first add the content section to the worker's profile. To access individual content sections using the talentPersonProfiles resource, you must give the required access for the content section to a role.

Securing access to individual content sections in REST API is done similar to the UI, by using the Profile Content Section Access task. You can specify the level of access as view, edit, or report for each role. For example, you can give edit access to users with the line manager role to add and edit the Competencies content and view access to only read the Education content of their workers.

For more information, see the chapter Securing Content Sections in Person Profiles in the Securing HCM guide on the Oracle Help Center and the attachment Using Enhanced Talent Profiles in the Upgrading Oracle Cloud HCM Profile Management document (Doc ID 2421964.1) on My Oracle Support.

Add a Competency for a Worker

Let's say that Marc's manager, James, wants to add a new competency for Marc. James uses the talentPersonProfiles resource to add the competency content section and related competency items to Marc's profile.

To add a new competency for a worker:

  1. Query (GET) the person profile by using a query parameter such as person number of the worker (for example, /talentPersonProfiles?q=PersonNumber='305688') and retrieve the collection URL for the competencySections child resource.
  2. Perform a POST operation on this URL, to add a new competency section and competency items to the worker's profile.

    If the competency section has already been added to the person's profile, skip this step.

    To add new competency items to an to existing section, retrieve (GET) the collection URL for the competencyItems child resource and perform a POST operation.

  3. Verify the profile details returned in the response.

Example URL

Use this resource URL format.

POST
/hcmRestApi/resources/11.13.18.05/talentPersonProfiles/{PersonId}/child/competencySections

Example Request

Here's an example of the request body in JSON format.

{
  "SectionContext":"COMPETENCY_300100541816424",
    "competencyItems":[
       {
         "Competency": "Financial Analytics",
         "ReviewDate": null,
         "ProficiencyRatingId": null,
         "ProficiencyRatingCode": null,
         "PerformanceRatingId": null,
         "PerformanceRatingCode": null,
         "YearsOfExperience": 1,
         "InterestLevel": "1001",
         "EvaluationType": "Customer",
         "YearAcquired": 2018,
         "YearLastUsed": 2018,
         "ReviewerApproved": "Y",
         "ReviewStartDate": "2020-09-28",
         "ReviewEndDate": "2020-09-28",
         "AssessmentYear": 2018,
         "ReviewActive": "N"
       }
    ]
}

Example Response

Here's an example of the response body in JSON format.

{
  "ProfileSectionId": 300100541911859,
  "SectionId": 300100541816424,
  "SectionContext": "COMPETENCY_300100541816424",
  "SectionName": "Competency",
  "CreatedBy": "ZANC_ZBEN_SUPER_USER",
  "CreationDate": "2020-12-01T18:47:00+00:00",
  "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
  "LastUpdateDate": "2020-12-01T18:47:01.453+00:00",
  "competencyItems": {
  "items": [
    {
     "CompetencyId": 300100541911860,
     "ContentItemId": null,
     "Competency": "Financial Analytics",
     "OtherCompetency": "null",
     "ReviewDate": null,
     "ProficiencyRatingId": 4005,
     "ProficiencyRatingCode": 5,
     "PerformanceRatingId": 5005,
     "PerformanceRatingCode": 5,
     "YearsOfExperience": 1,
     "InterestLevel": "1001",
     "EvaluationType": "Customer",
     "ReviewerName": "XX_XXX, XX_XXX",
     "Reviewer": null,
     "YearAcquired": 2018,
     "YearLastUsed": 2018,
     "ReviewerApproved": "Y",
     "ReviewStartDate": "2020-09-28",
     "ReviewEndDate": "2020-09-28",
     "AssessmentYear": 2018,
     "ReviewActive": "N",
     "FromDate": "2020-12-01",
     "ToDate": null,
     "CreatedBy": "XX_SUPER_USER",
     "CreationDate": "2020-12-01T18:47:00.565+00:00",
     "LastUpdatedBy": "XX_SUPER_USER",
     "LastUpdateDate": "2020-12-01T18:47:01.455+00:00",
     "links": [
         ...]
    }
}

Add a Skill for a Worker

As Marc's manager, James wants to add a new skill for Marc. James uses the talentPersonProfiles resource to add the new skill to the existing desired skill content section in Marc's profile.

To add a new skill for a worker:

  1. Query (GET) the person profile by using a query parameter such as person number of the worker (for example, /talentPersonProfiles?q=PersonNumber='305688') and retrieve the collection URL for the skillSections child resource.
  2. For the desired skill section, retrieve (GET) the collection URL for the skilltems child resource.

    If the desired skill content section is not already added to Marc's profile, perform a POST on the skillsections resource first to add the content section and then retrieve the collection URL for the skillItems child resource.

  3. Perform a POST operation on the skillItems child resource to add a new skill item to the profile.
  4. Verify the profile details returned in the response.

Example URL

Use this resource URL format.

POST
/hcmRestApi/resources/11.13.18.05/talentPersonProfiles/{PersonId}/child/skillSections/{Id}/child/skillItems

Example Request

Here's an example of the request body in JSON format.

{
  "Skill":"Client Negotiations"
  "YearsOfExperience": 2,
  "SkillType": "COMMUNICATION"
}

Example Response

Here's an example of the response body in JSON format.

{
  "SkillId": 300100217325981,
  "Skill": "Client Negotiations",
  "DateAchieved": null,
  "YearsOfExperience": 2,
  "ProjectOrActivity": null,
  "SkillType": "COMMUNICATION",
  "CreatedBy": "ZANC_ZBEN_SUPER_USER",
  "CreationDate": "2020-08-20T20:46:23+00:00",
  "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
  "LastUpdateDate": "2020-08-20T20:48:37.888+00:00",
  "links": [
      ...]
}

Create a Worker Profile with Competencies and Accomplishments

Let's say that John is an integration specialist, and wants to create a new worker profile for Marc. John uses the talentPersonProfiles resource to create Marc's profile, including his competencies and accomplishments.

To create a new profile for a worker:

  1. Perform a POST operation on the talentPersonProfiles resource URL, providing the competencies and accomplishments in the request body.
  2. Verify the profile details returned in the response.

Example URL

Use this resource URL format.

POST
/hcmRestApi/resources/11.13.18.05/talentPersonProfiles

Example Request

Here's an example of the request body in JSON format.

{
   "PersonNumber": "30010090",
   "competencySections": [
        {
            "SectionContext": "COMPETENCY_300100541816424",
            "competencyItems": [
                {
                    "Competency": "Influence Others"
                }
            ]
        }
    ],
    "accomplishmentSections": [
        {
            "SectionContext": "ACCOMPLISHMENT_300100541816271",
            "accomplishmentItems": [
                {
                    "Accomplishment": "Completed PMP Training"
                }
            ]
        }
    ]
}

Example Response

Here's an example of the response body in JSON format.

{
    "ProfileId": 300100542987830,
    "ProfileCode": "PERS_300100542987830",
    "PersonId": 3002963134,
    "PersonNumber": "30010090",
    "Summary": null,
    "StatusCode": null,
    "CreatedBy": "ZANC_ZBEN_SUPER_USER",
    "CreationDate": "2020-12-04T17:23:17+00:00",
    "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
    "LastUpdateDate": "2020-12-04T17:23:22.580+00:00",
    "accomplishmentSections": {
        "items": [
            {
                "ProfileSectionId": 300100542987833,
                "SectionId": 300100541816271,
                "SectionContext": "ACCOMPLISHMENT_300100541816271",
                "SectionName": "Accomplishment01",
                "CreatedBy": "ZANC_ZBEN_SUPER_USER",
                "CreationDate": "2020-12-04T17:23:20.494+00:00",
                "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
                "LastUpdateDate": "2020-12-04T17:23:23.100+00:00",
                "accomplishmentItems": {
                    "items": [
                        {
                            "AccomplishmentId": 300100542987834,
                            "Accomplishment": "Completed PMP Training",
                            "DateAccomplished": null,
                            "Organization": null,
                            "ExpirationDate": null,
                            "AccomplishmentType": null,
                            "EstablishmentId": null,
                            "Establishment": null,
                            "OtherEstablishment": null,
                            "PublisherOrPublication": null,
                            "AuthorOrInventor": null,
                            "PatentOrApplicationNumber": null,
                            "PatentIssued": null,
                            "PatentPending": null,
                            "PatentURL": null,
                            "AccomplishmentLocation": null,
                            "PrimaryAuthor": null,
                            "CreatedBy": "ZANC_ZBEN_SUPER_USER",
                            "CreationDate": "2020-12-04T17:23:20.702+00:00",
                            "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
                            "LastUpdateDate": "2020-12-04T17:23:23.102+00:00",
                            "links": [
                               ...]
    },
    "competencySections": {
        "items": [
            {
                "ProfileSectionId": 300100542987831,
                "SectionId": 300100541816424,
                "SectionContext": "COMPETENCY_300100541816424",
                "SectionName": "Competency01",
                "CreatedBy": "ZANC_ZBEN_SUPER_USER",
                "CreationDate": "2020-12-04T17:23:18.908+00:00",
                "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
                "LastUpdateDate": "2020-12-04T17:23:22.739+00:00",
                "competencyItems": {
                    "items": [
                        {
                            "CompetencyId": 300100542987832,
                            "ContentItemId": 1234343434,
                            "Competency": "Influence Others",
                            "OtherCompetency": null,
                            "ReviewDate": null,
                            "ProficiencyRatingId": null,
                            "ProficiencyRatingCode": null,
                            "PerformanceRatingId": null,
                            "PerformanceRatingCode": null,
                            "YearsOfExperience": null,
                            "InterestLevel": null,
                            "EvaluationType": "Official",
                            "ReviewerName": "ZANC_ZBEN_SUPER_USER, ZANC_ZBEN_SUPER_USER",
                            "Reviewer": null,
                            "YearAcquired": null,
                            "YearLastUsed": null,
                            "ReviewerApproved": null,
                            "ReviewStartDate": null,
                            "ReviewEndDate": null,
                            "AssessmentYear": null,
                            "ReviewActive": null,
                            "FromDate": "2020-12-04",
                            "ToDate": null,
                            "CreatedBy": "ZANC_ZBEN_SUPER_USER",
                            "CreationDate": "2020-12-04T17:23:19.586+00:00",
                            "LastUpdatedBy": "ZANC_ZBEN_SUPER_USER",
                            "LastUpdateDate": "2020-12-04T17:23:22.741+00:00",
                            "links": [
                                 ...]
        }
    ]
}