Angular/API server: New User creation and limited fields

We are working to implement a new user form in the angular portal. We are targeting the endpoint /portal/admin/person to do the insert. 

However, this endpoint appears to be limited on what columns can be written and in this environment one of the required fields in a custom property on the person record. 

The specific error from the API server is: 
An error occurred while processing the request: POST https://<server>/ApiServer/portal/admin/person ---> System.Exception: The following columns are not writable: Phone, CustomProperty01, PersonalTitle

If I try this same endpoint in a lab that doesn't require custom01 to be filled, and just use Fisrt and last name it works as expected. In that same lab if I add in phone and job title it fails with a message like the above. 



I have given the test user an excess of column permissions via a custom application role and I've tried several other OOTB application functions but I can't find a combination that will allow those columns to be written via this OOTB endpoint. 

Looking through the API samples on the install media I get the impression that this /porta/admin/person endpoint limits the columns and that to write these columns we would need to implement a custom endpoint. 

Can anyone confirm if this is the case? Or if I'm missing something?  It seems odd to me that the existing endpoint wouldn't allow me to write common properties like a person's job title. 

Parents
  • Maybe this will help:

    The OOTB properties are hard-coded in the QER.CompositionApi.Server.PlugIn.dll
    But you can add or remove them via:

    Login to the Administration portal
    Click on Configuration
    Click the drop and select: web portal
    Search for the following keyword VI_Employee_MasterData

    The person object is broken-up in three sections (for use in the HTML5 app: qer-app-portal)
    but they are all combined under the end-point: portal/admin/person

    Identity data / Personal data
    Identity data / Location information
    Identity data / Organizational attributes

    I would put the property 'Title' under the section 'Personal data'

    Feature configuration (QER)
    Identity data / Personal data
    Add new: Title

    After that recycle the application pool and you will see the property in json response body
    %windir%\system32\inetsrv\appcmd.exe recycle APPPOOL "ApiServerDev_POOL"
    https://.../apiserverdev/portal/admin/person

  • HI Niels, 

    This was exactly what I was missing here. Thank you for the quick response. 

Reply Children
No Data