API - hr_contact_rel_api.create_contact
Example --
 
DECLARE 
      ln_contact_rel_id                   PER_CONTACT_RELATIONSHIPS.CONTACT_RELATIONSHIP_ID%TYPE; 
      ln_ctr_object_ver_num         PER_CONTACT_RELATIONSHIPS.OBJECT_VERSION_NUMBER%TYPE; 
      ln_contact_person                 PER_ALL_PEOPLE_F.PERSON_ID%TYPE; 
      ln_object_version_number  PER_CONTACT_RELATIONSHIPS.OBJECT_VERSION_NUMBER%TYPE; 
      ld_per_effective_start_date DATE; 
      ld_per_effective_end_date  DATE; 
      lc_full_name                            PER_ALL_PEOPLE_F.FULL_NAME%TYPE; 
      ln_per_comment_id              PER_ALL_PEOPLE_F.COMMENT_ID%TYPE; 
      lb_name_comb_warning     BOOLEAN; 
      lb_orig_hire_warning           BOOLEAN;
   
  BEGIN
      -- Create Employee Contact
      -- -------------------------------------
       hr_contact_rel_api.create_contact
       (    -- Input data elements
             -- -----------------------------
             p_start_date                                      => TO_DATE('14-JUN-2011'),
             p_business_group_id                    => fnd_profile.value('PER_BUSINESS_GROUP_ID'),
             p_person_id                                      => 32979,
             p_contact_type                                 => 'M',
             p_date_start                                      => TO_DATE('14-JUN-2011'),
             p_last_name                                     => 'TEST',
             p_first_name                                     => 'CONTACT',
             p_personal_flag                               => 'Y',
             -- Output data elements
             -- --------------------------------
            p_contact_relationship_id            => ln_contact_rel_id,
            p_ctr_object_version_number      => ln_ctr_object_ver_num,
            p_per_person_id                              => ln_contact_person,
            p_per_object_version_number     => ln_object_version_number,
            p_per_effective_start_date             => ld_per_effective_start_date,
            p_per_effective_end_date              => ld_per_effective_end_date,
            p_full_name                                       => lc_full_name,
            p_per_comment_id                          => ln_per_comment_id,
            p_name_combination_warning  => lb_name_comb_warning,
            p_orig_hire_warning                      => lb_orig_hire_warning
       );
   
   COMMIT;
  
EXCEPTION
              WHEN OTHERS THEN
                        ROLLBACK;
                        dbms_output.put_line(SQLERRM);
  END;
  /
SHOW ERR;