cancel
Showing results for 
Search instead for 
Did you mean: 

Successfactors Synchronous Integration with 3rd party

Former Member
0 Kudos

Hello All,

I am trying to develop a scenario like the one in the screenshot below

Upon clicking a custom link in Successfactors page, a SOAP call will be made to HCI. HCI will then make a sync call to ECP to get the required details and will eventually send this data to Successfactors using the SuccessFactors adapter and this will show up on the SuccessFactors page which will open up on clicking the link.

I have the below questions regarding the configuration of the below scenario

  1. How will the custom link call HCI? Will there be some configuration required for this?

   2.  Which operation (upsert, query, get) will HCI use to post data to the Odata API for required details in Successfactors?

Regards,

Diptee

Accepted Solutions (1)

Accepted Solutions (1)

lukemarson
Active Contributor
0 Kudos

Hi Diptee,

I don't think this scenario is possible without building some kind of HCP app. The other option is to have a regular call made to replicate data into a Generic Object that can be viewed in Employee Files or Manage Data.

Best regards,

Luke

Former Member
0 Kudos

Hello Luke,

I managed the above scenario by elimnating the need for sender system to initiate the interface, instead I used a timer start event to make the sync call to ECP at regular time intervals and update the data into SuccessFactors everytime.

Regards,

Diptee

lukemarson
Active Contributor
0 Kudos

Hi Diptee,

Did you add the link in SuccessFactors or did you just setup the timer?

Best regards,

Luke

Former Member
0 Kudos

Hello Luke,

I setup the timer.

regards,

Diptee

Former Member
0 Kudos

Hello Luke,

I am trying to query a datetime field in my Successfactors integration scenario. Basically, I want to select all records from an Odata API with createddatetime greater than a particular date. However, when i try to use the operator gt to achieve this, I get an error saying

Invalid filter expression: ' createdDateTime gt datetime'2015-08-24T00:00:00''., cause: org.apache.olingo.odata2.api.uri.expression.ExpressionParserException: Operator "gt" incompatible with operand types "Edm.DateTimeOffset" and "Edm.DateTime" at position 18 in " createdDateTime gt datetime'2015-08-24T00:00:00'"


Can you throw some light on this?


Regards,

Diptee

gerald_reinhard
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Diptee,

please change your query to createdDateTime+gt+datetimeoffset'2015-08-24T00:00:00Z' after that everything should work fine. Only mistake was usage of datetime instead datetimeoffset.

Best regards

  Gerald

Former Member
0 Kudos

Thanks Gerald,

That worked! I have a new question now, I have created a custom Odata API in successfactors and i want to replicate data into this from ERP system. I have configured a successfactors receiver adapter for the same purpose with Upsert as the operation type. When I try to insert data into the API for the first time, i.e. for an employee who has no data in this API, I send the below as input

- effectiveStartDate (current system date)

- mdfSystemTransactionSequence (1)

- username (username of an employee existing in Successfactors).

But I receive an error, saying no entry exists for this combination of effStartDate, mdfSystemTransactionSequence and username.

Can anyone of you help me know why is Successfactors looking for an entry when I am trying to insert a new one? My custom entity already has the insert, upsert and query operations enabled for it.

Regards,
Diptee

gerald_reinhard
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Diptee,

difficult to tell without knowing what kind of entity and API call you are using. From what you are writing I can see that some of the data provided to the API makes no sense (e.g. mdfSystemTransactionSequence). Can you provde the full OData API call and a screenshot of the MDF entitiy (object definition).

You will find several examples of how to write and read data for MDF objects in the "Metadata framework (MDF)" guide avialable at help.sap.com/hr_foundation. More infromation about all our OData APIs is available at help.sap.com/hr_api.

Best regards

    Gerald

Former Member
0 Kudos

Hello Gerald,

This is a custom entity with definition as in the response below

I was actually trying to give you the OData API call for this, but I have the below error when I try to send a call to this

---- Debugging information ----

message : while trying to invoke the method org.apache.olingo.odata2.api.edm.EdmProperty.getType() of a null object loaded from local variable 'property'

cause-exception     : java.lang.NullPointerException

cause-message       : while trying to invoke the method org.apache.olingo.odata2.api.edm.EdmProperty.getType() of a null object loaded from local variable 'property'

class : java.util.ArrayList

required-type       : java.util.ArrayList

converter-type      : com.sap.gateway.core.ip.processor.converter.ConverterXMLToHashmap

path : /cust_PFApplication/cust_PFApplication/PFAndPensionInformation

version : null

-------------------------------, cause: java.lang.NullPointerException: while trying to invoke the method org.apache.olingo.odata2.api.edm.EdmProperty.getType() of a null object loaded from local variable 'property'


Can you help on this?


regards,

Diptee

Former Member
0 Kudos

<EntityType Name="cust_PFApplication">

        <Key>

          <PropertyRef Name="PFAndPensionInformation" />

          <PropertyRef Name="effectiveStartDate" />

          <PropertyRef Name="mdfSystemTransactionSequence" />

        </Key>

        <Property Name="PFAndPensionInformation" Type="Edm.String" Nullable="false" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="externalCode" />

        <Property Name="createdBy" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemCreatedBy" />

        <Property Name="createdDateTime" Type="Edm.DateTimeOffset" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemCreatedDate" />

        <Property Name="cust_August" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="August" />

        <Property Name="cust_ComApril" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="ComApril" />

        <Property Name="cust_CompanyContributioncurrentYear" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="CompanyContributioncurrentYear" />

        <Property Name="cust_December" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="December" />

        <Property Name="cust_EmpContributioncurrentyear" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="EmpContributioncurrentyear" />

        <Property Name="cust_February" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="February" />

        <Property Name="cust_Janurary" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="Janurary" />

        <Property Name="cust_July" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="July" />

        <Property Name="cust_June" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="June" />

        <Property Name="cust_March" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="March" />

        <Property Name="cust_May" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="May" />

        <Property Name="cust_November" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="November" />

        <Property Name="cust_October" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="October" />

        <Property Name="cust_PFAccountNo" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="PFAccountNo" />

        <Property Name="cust_PFBalance" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="PFBalance" />

        <Property Name="cust_PFInterestRate" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="PFInterestRate" />

        <Property Name="cust_PensionAccNo" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="PensionAccNo" />

        <Property Name="cust_PensionBalance" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="PensionBalance" />

        <Property Name="cust_September" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="September" />

        <Property Name="cust_UANNo" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="UANNo" />

        <Property Name="cust_Userid" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="Userid" />

        <Property Name="cust_VPFAmontAnnual" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="VPFAmontAnnual" />

        <Property Name="cust_april" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="april" />

        <Property Name="cust_comAugust" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comAugust" />

        <Property Name="cust_comFeburary" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comFeburary" />

        <Property Name="cust_comJanurary" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comJanurary" />

        <Property Name="cust_comJuly" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comJuly" />

        <Property Name="cust_comJune" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comJune" />

        <Property Name="cust_comMarch" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comMarch" />

        <Property Name="cust_comMay" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comMay" />

        <Property Name="cust_comNovember" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comNovember" />

        <Property Name="cust_comOctober" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comOctober" />

        <Property Name="cust_comdecember" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comdecember" />

        <Property Name="cust_comseptember" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="100" sap:label="comseptember" />

        <Property Name="effectiveStartDate" Type="Edm.DateTime" Nullable="false" sf:Required="true" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="effectiveStartDate" />

        <Property Name="externalName" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="128" sap:label="externalName" />

        <Property Name="lastModifiedBy" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemLastModifiedBy" />

        <Property Name="lastModifiedDateTime" Type="Edm.DateTimeOffset" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemLastModifiedDate" />

        <Property Name="mdfSystemCreatedBy" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemCreatedBy" />

        <Property Name="mdfSystemCreatedDate" Type="Edm.DateTime" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemCreatedDate" />

        <Property Name="mdfSystemEffectiveEndDate" Type="Edm.DateTime" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemEffectiveEndDate" />

        <Property Name="mdfSystemEntityId" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemEntityId" />

        <Property Name="mdfSystemLastModifiedBy" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemLastModifiedBy" />

        <Property Name="mdfSystemLastModifiedDate" Type="Edm.DateTime" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemLastModifiedDate" />

        <Property Name="mdfSystemLastModifiedDateWithTZ" Type="Edm.DateTimeOffset" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemLastModifiedDate" />

        <Property Name="mdfSystemObjectType" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemObjectType" />

        <Property Name="mdfSystemRecordId" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemRecordId" />

        <Property Name="mdfSystemRecordStatus" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemRecordStatus" />

        <Property Name="mdfSystemStatus" Type="Edm.String" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" MaxLength="255" sap:label="mdfSystemStatus" />

        <Property Name="mdfSystemTransactionSequence" Type="Edm.Int64" Nullable="false" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemTransactionSequence" />

        <Property Name="mdfSystemVersionId" Type="Edm.Int64" Nullable="true" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" sap:label="mdfSystemVersionId" />

        <NavigationProperty Name="PFAndPensionInformationNav" sf:Required="false" sf:Insertable="true" sf:Updatable="true" sf:Upsertable="true" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" Relationship="SFOData.PFAndPensionInformationNav_of_cust_PFApplication" FromRole="cust_PFApplication" ToRole="PFAndPensionInformationNav" sap:label="externalCode" />

        <NavigationProperty Name="mdfSystemRecordStatusNav" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" Relationship="SFOData.mdfSystemRecordStatusNav_of_cust_PFApplication" FromRole="cust_PFApplication" ToRole="mdfSystemRecordStatusNav" sap:label="mdfSystemRecordStatus" />

        <NavigationProperty Name="mdfSystemStatusNav" sf:Required="false" sf:Insertable="false" sf:Updatable="false" sf:Upsertable="false" sf:Selectable="true" sf:Sortable="true" sf:Filterable="true" Relationship="SFOData.mdfSystemStatusNav_of_cust_PFApplication" FromRole="cust_PFApplication" ToRole="mdfSystemStatusNav" sap:label="mdfSystemStatus" />

      </EntityType>

gerald_reinhard
Product and Topic Expert
Product and Topic Expert
0 Kudos

https://websmp206.sap-ag.de/~form/alko/011000358700002786892002E?WS=RECA01&WSDATE=20150907&LOC=Walld...

https://websmp206.sap-ag.de/~form/sapnet?_FRAME=CONTAINER&_OBJECT=012002523100011892212015E

Hi Diptiee,

This is the MDF Metadata from OData and not the generic object defintion from the UI. I assume that you use a number generation for external code and hence the external code is not required. In such a case the simples upsert API would look like this:

Please replace cust_AutoNumberTest by your Entity name and check the OData API guides for more details. I also recommend to use a rest test client to create a first working APIs call before adding additional complexity to your code by using middleware or java SDKs. This avoids searching at the wrong place in case of errors.

There is also an EC integration/API training available for partners:

Training Detail and Registration see links at the beginning

Best regards

   Gerald

Former Member
0 Kudos

Hello Gerald,

I am not using number generation for external code. With my custom API, I am trying to update Additional details for employees newly created in Successfactors. Hence, I am using the username of the employee as the external code.

But my question is with the key fields as below

          <PropertyRef Name="PFAndPensionInformation" />

          <PropertyRef Name="effectiveStartDate" />

          <PropertyRef Name="mdfSystemTransactionSequence" />

I understand that if a record with values matching fields above is not found, it should automatically insert a new record, isnt it?

Also I do not understand the null pointer exception error I am getting when I try to perform the mapping using the latest XSD from Successfactors.

Thanks for the link to the training sessions, I have tried registering for the same.

Regards,

Diptee

gerald_reinhard
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

first the above mentioned fields are not the key fields. The one and only key field in MDF object (which is not of type composition child) is the external code (and the start date in case of effecitve dated obejects and the sequence number in case of MCPD).

From you metadata I would assume that you have renamed the externalCode field in the MDF object to PFAndPensionInformation this will cause issues and could be the reason of your error. Please do not rename any default fields (only change label or type). This is also the reason why I thought you are using autonumbering because you didn't have the externalCode in your keys. This was a just a gues because this information would have beend available only in a screenshot of the generic object data model and not in the OData metadata.

If you create a basic MDF obejct (without renaming any fields but with date information) you will be able to create data with the OData request above. But this is a create statement it will not check if the record exists an update. If you require such a behavior you have to use the upsert (odata/v2/upsert).

My recommendation: Start simple and check the docs for examples. Start with creating a simple MDF object without changing any field names. Create a simple read and write API using a test client (no SDKs, Middleware). Make this work and extend to more complex modells.

Use my example from above and change to upsert by replacing the entity name cust_TestAutoGenerate (in this case it is important to have the metadata URL in the payload in order to let the API know what the updated/created entity is)

Best regards

    Gerald

Former Member
0 Kudos

Thanks Gerald,

I tried by keeping the externalCode field name intact and it worked,

Regards,

Diptee

Answers (0)