Upload
vannhan
View
227
Download
4
Embed Size (px)
Citation preview
Integration Guide CUSTOMER
SAP Hybris Marketing CloudDocument Version: 1.0 – 2017-05-09
Data Management Upload Interfaces 1705
Content
1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 General. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.1 Email Validation Checks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3 Interaction Contacts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Interactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5 Companies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
6 Product Categories and Products. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7 Best Practices and Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177.1 Recommended Package Sizes and Upload Sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177.2 Optimizing Performance During OData Service Calls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
8 Import Data (Using CSV Upload). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238.1 Corporate Accounts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .258.2 Contacts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .258.3 Account Team Members. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268.4 Product Categories. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268.5 Products. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278.6 Interactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288.7 Interests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298.8 Marketing Locations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298.9 Marketing Beacons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308.10 Custom Business Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308.11 Custom Dimensions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308.12 Actual and Committed Spend. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318.13 Subscriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328.14 Campaign Success. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338.15 Survey Response. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
9 Import of Data Using OData Service CUAN_IMPORT_SRV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359.1 Structure of OData Service CUAN_IMPORT_SRV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369.2 Import of Interaction Contact Data Using OData Services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589.3 Import of Interaction Data Using OData Services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699.4 Import of Companies Using OData Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909.5 Import of Product Category and Product Data Using OData Services. . . . . . . . . . . . . . . . . . . . . . . . . . 92
2 C U S T O M E RData Management Upload Interfaces 1705
Content
9.6 Import of Marketing Locations Using an OData Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979.7 Import of Marketing Beacons Using an OData Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1139.8 Import of Marketing Permission and Subscription Data Using OData Service. . . . . . . . . . . . . . . . . . . . 121
10 Use Cases for Importing Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12710.1 Import Contacts with Marketing Permissions from an External Source System . . . . . . . . . . . . . . . . . . 12710.2 Import Interactions for Newsletter Subscriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12910.3 Import Interactions for Marketing Permissions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
11 Appendix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Data Management Upload Interfaces 1705Content C U S T O M E R 3
Document History
Before you start, make sure you have the latest version of this document. You can find the latest version at the following location:
http://help.sap.com/mkt
The following table provides an overview of the most important document changes. If the information you are looking for is not described in this guide or if you find something described incorrectly, please send an email to mailto:[email protected] and we'll update this guide.
Table 1: Document History
Version Date Description
1.0 2017-05-09 Initial version for SAP Hybris Marketing Cloud
4 C U S T O M E RData Management Upload Interfaces 1705
Document History
1 Introduction
This document describes the external interfaces that SAP Hybris Marketing Cloud provides for creating or updating Interaction Contacts, Interactions, Interests, Corporate Accounts, Product Categories, and Products. The following interfaces exist:
● CSV upload - This upload is performed manually in Import Data and is additionally documented in the Application Help, which you can access directly from the in-app help.
● OData service CUAN_IMPORT_SRV.
NoteThe OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV should be used to create interactions from business documents from any source system. In contrast to OData service CUAN_IMPORT_SRV, CUAN_BUSINESS_DOCUMENT_IMP_SRV enables you to change interactions. Each business document is represented by an interaction, and is identified by the key of the business document in the external system. The OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV is used for standard integration of SAP Hybris Marketing with SAP Hybris Cloud for Customer. It is also used in marketing-driven and sales-driven processes. For information on using the OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV see the Importing Business Documents guide at http://help.sap.com/mkt SAP Hybris Marketing Cloud SAP Hybris Marketing Cloud Product Page Integration System Setup and Integration . .
Feedback
We'd really like to know what you think of the quality, structure or content of this guide. Please send your feedback to us at mailto:[email protected].
Data Management Upload Interfaces 1705Introduction C U S T O M E R 5
2 General
This chapter describes miscellaneous functions and checks.
2.1 Email Validation Checks
Email addresses are checked for validity according to RFC 3696 norm. The validation checks are listed in the table below.
The format of a valid email address is [email protected]
● The local part, found before @, is typically the user name.● A subdomain, found directly after @, is optional, for example help in [email protected]. A
subdomain can also be composed of several parts, separated by a dot, for example cloud.help.● The domain is typically the name of the business, organization or Internet service provider that owns that
domain.● The top-level domain is what appears right-most in an email address, after the domain. For example, .com in
Table 2:
Local Part Domain Part
Allowed Characters ● !#$%&*+-/=?^_`'{|}~.● ABCDEFGHIJKLMNOPQRSTUVWXYZ
(capital letters)● abcdefghijklmnopqrstuvwxyz
(small letters)● 0123456789 (numbers)
● Separator: . (dot)
● Whole domain part:○ ABCDEFGHIJKLMNOPQRSTUVWX
YZ (capital letters)
○ abcdefghijklmnopqrstuvwxyz (small letters)
Additional allowed characters Following \ or between ""
"(),:;<>[]@\<blank>
● Additionally for domain and subdomain:○ - (minus sign)○ 0123456789 (numbers)
Restrictions ● Minimum 1 character● Maximum 64 characters● No dot at the start or end
● Minimum 1 character for subdomain/domain
● Minimum 2 characters for top level domain
● Maximum 255 characters● No dot at the start or end
6 C U S T O M E RData Management Upload Interfaces 1705
General
Example● Abc\@[email protected] ● Fred\ [email protected]● Joe.\\[email protected]● "Abc@def"@example.com● "Fred Bloggs"@example.com● [email protected]● customer/[email protected]● [email protected]● !def!xyz%[email protected]● [email protected]
Data Management Upload Interfaces 1705General C U S T O M E R 7
3 Interaction Contacts
Interaction contacts refer to contacts in SAP Hybris Marketing Cloud. A contact is a natural person who interacts with a company. Contact data is collected and merged from several sources into the master data tables within SAP Hybris Marketing Cloud .
We distinguish between contacts, corporate contacts, consumers, and suspects to define the business relationship of a contact to a company. For this purpose, the contact master data contains the IS_CONTACT and IS_CONSUMER fields:
● A suspect is a natural person whose interests are unknown but who, at some future date, may be important in the interaction with a company (B2B process), or may generate sales revenue (B2C process).
● A contact is a natural person with whom a company interacts in a B2B process (IS_CONTAcT = X).● A consumer is a natural person who generates sales revenue (IS_CONSUMER = X).
A person can be a contact and a consumer at the same time.
In addition to the business relationship, the validation status and contact level is also interesting. These indicate to what extent the information about a contact is valid. For example, if a contact simply clicked on an item on your Web site, the validation status is low, meaning that the contact is unknown. Whereas if a contact filled in a form on the Web site and entered name and address data, the contact is self-identified. If a contact clicked on a link in an email that you have sent after the contact has registered on your Web site, the contact is verified, meaning that the email address is validated. If a contact is in your customer database, the contact is a business partner.
Enhancing the Interaction Contact Data
In addition to the predelivered attributes defined, you can add customer-specific fields using the Custom Fields and Logic app. For more information about how to do this, see http://help.sap.com/s4hana SAP S/4HANA Cloud <latest version> Additional Information Product Assistance Generic Information General Functions for the Key User Extensibility Custom Fields and Logic . Custom fields are then automatically included during the CSV and OData uploads.
The naming convention for custom fields is: YY1-<YOURLABELINUPPERCASE>_<predefined business context>, for example: YY1_MYCUSTOMFIELD_ENH indicates a custom field for an interaction contact. You can see the structure of your data in:
● The CSV template appended to the entries delievered by SAP.● In the OData metadata structure that is displayed when you log onto the system as follows: https://
<server&port>/sap/opu/odata/sap/cuan_import_srv/$metadata
NoteNote about the BADI Update Interaction Contact
Two field groups are available for updating interaction contact common data - one group contains fields related to the name and one group contains fields related to the address:
8 C U S T O M E RData Management Upload Interfaces 1705
Interaction Contacts
● Name: NAME_TEXT, NAME_FIRST, NAME_LAST● Address: STREET, HOUSE_NUM1, POSTCODE1, CITY1, COUNTRY, COUNTRY_FT, REGION_FT
The standard logic of the BADI Contact Interaction Update is as follows as far as these two field groups are concerned. These fields are filled according to the priority assigned to an origin in step 8. For example, if data from the origin SAP_ERP_CONTACT has a higher priority than data from the origin SAP_CRM_BUPA, the fields in these groups will be filled solely with data from SAP_ERP_CONTACT. If data in certain fields is not provided from SAP_ERP_CONTACT, these fields will remain empty. Missing data will not be filled from the source with the next highest priority if it is available.
Customers can change the standard BADI logic to adjust this behavior if required.
Free Text Mapping
When you import interaction contacts from a non-SAP system, free texts cannot always be automatically mapped to the internal IDs and names used by SAP. The automatic mapping of free text values to internal ID values keeps the interface simple. If only free text is provided, the system tries to determine the corresponding code.
Mapping is supported for the following attributes:
● Country● Region● Language● Department● Function● Industry● Gender● Marital Status● Title
During the import of interaction contacts and interactions, mapping is performed automatically. For new, unknown free texts that cannot be mapped to SAP IDs, entries are created automatically as work items. You can then map these free texts to SAP IDs in the Self-Service Configuration app Map Free Texts.
ID ORIGIN
The origin of an ID indicates the source of this ID. The ID_ORIGIN field is maintained in the Self-Service Configuration app Define Origins of Contact ID. This is relevant if you want to add a new origin. For ID origins that are not delivered by SAP, add these IDs via the contact facets. The contact facets interface is available in the OData service. For CSV Upload, the ID_ORIGIN field is set to SAP_FILE_IMPORT. This is the default, but you can also define different ID origins. This allows you to update the contact with different sources. If no ID is provided in the CSV file, it is generated automatically.
Caution● You must specify a different ID Origin per source system or data source. In other words, if you import data
from multiple sources, for example, from an ERP system, a CRM system, or a third-party system, you must
Data Management Upload Interfaces 1705Interaction Contacts C U S T O M E R 9
ensure that the ID Origin for each source is different. Otherwise the data from one source will overwrite data imported from another source.
● You are not allowed to use the origin SAP_HYBRIS_MKT_IC.
In addition, you can flag an origin as incognito. Incognito in this context means that the system does not automatically create a master data record for a contact ID with the respective origin since the origin does not contain sufficient information to relate the ID to a person. For contact IDs from origins that are not flagged as incognito, the system automatically creates a master data record with the available information.
10 C U S T O M E RData Management Upload Interfaces 1705
Interaction Contacts
4 Interactions
Use
Interactions refer to communication and information exchange of any kind between a user's company and a contact, such as emails to a company, phone calls to a contact, and posts written in social networks about a company or the company's products. There is no limit on the number of interactions that an interaction contact can have.
Prerequisites
Before interaction data can be imported, the following prerequisites must be met:
● Interaction type and communication medium have been assigned to a channel in the Self-Service Configuration app Manage Interaction Content.
● Interests must be edited or uploaded in Business Administration Manage Interests .
NoteIf social media posts are imported (IA_TYPE = SOCIAL_POSTING), the ID_ORIGIN must be available as social media channel code (SMI_TYPE) such as TW for Twitter . The entries for ID_ORIGIN and COMM_MEDIUM must be identical with the SMI_TYPE.
● The BAdI: Revise Interaction Data Before Import (CUAN_IA_REVISE_FOR_IMPORT) can be used to change data during import.
Semantic Key
The semantic key for interactions determines the uniqueness of an interaction record. The semantic key is defined by the following 7 fields, 5 mandatory and 2 optional:
● These 5 fields are mandatory and are checked during import:○ ID_ORIGIN: Origin of the interaction contact data (except in the case of ANONYMOUS interactions, as
described under point 2b below.)○ ID: External ID of the interaction contact data (except in the case of ANONYMOUS interactions, as
described under point 2b below.)○ IA_TYPE: Interaction type○ COMM_MEDIUM: Communication medium○ TIMESTAMP: UTC time stamp in long form (YYYYMMDDhhmmss.mmmuuun)
● These 2 semantic key fields are optional and are not checked during import:
Data Management Upload Interfaces 1705Interactions C U S T O M E R 11
○ SOURCE_OBJECT_TYPE: Object type of the source object, for example, an opportunity in SAP Hybris Cloud for Customer.
○ SOURCE_OBJECT_ID: Object ID of the source object, for example, the GUID of the SAP Hybris Cloud for Customer opportunity or the original post ID of the respective social media network (such as TW or FB).
NoteOne exception to this is in the case of a social posting. For a social posting, a SOURCE_OBJECT_ID is required. In this case the system checks to see whether the SOURCE_OBJECT_ID field is filled and returns an error if the field is empty. The check behavior is described in the table.
Table 3:
If
IA_TYPE is
SOURCE_OBJECT_ID should be filled with
Remarks
SOCIAL_POSTING Original Post ID of the respective social media network
This is checked during upload.
SHOP_ITEM_VIEW WEB_SESSION_ID For recommendations only. Not checked during upload.
WEBSITE_SEARCH WEB_SESSION_ID For recommendations only. Not checked during upload.
CLICK_THROUGH WEB_SESSION_ID For recommendations only. Not checked during upload.
SALES_ORDER SALES_ORDER_ID For recommendations only. Not checked during upload.
Anonymous Interactions
To import anonymous interactions, activate the IS_ANONYMOUS field. The system does not create a contact for anonymous interactions.
The system behavior for anonymous interactions is as follows:
● Usual Case for Anonymous Interactions:The ID_ORIGIN is anonymous and the IS_ANONYMOUS indicator is set ("X"). The system stores the interaction as an anonymous one.
● Deviations from Usual Case:Termination of Import if:1. The ID_ORIGIN is not anonymous and the IS_ANONYMOUS indicator is set ("X"). The system terminates
the import with a corresponding notification.2. The ID_ORIGIN is empty and the IS_ANONYMOUS indicator is not set (" "). The system terminates the
import with a corresponding notification.System Correction of Import Data:
12 C U S T O M E RData Management Upload Interfaces 1705
Interactions
1. The ID_ORIGIN is anonymous and the IS_ANONYMOUS indicator is not set (" "). The system sets the IS_ANONYMOUS indicator and stores the interaction as an anonymous one.
2. The ID_ORIGIN is anonymous, the IS_ANONYMOUS indicator is set ("X"), and the ID is empty. The system creates a new GUID for field ID.
3. The ID_ORIGIN is empty (and, in addition, the ID is empty) and the IS_ANONYMOUS indicator is set ("X"). The system sets the ID_ORIGIN to anonymous, stores the interaction as an anonymous one, and creates a new GUID for field ID.
Standard Fields and Custom Fields
For a description of all fields supported for the import of interaction data, see the Appendix [page 132].
Custom Fields
In addition to the predelivered attributes defined, you can add customer-specific fields using the Custom Fields and Logic app. For more information about how to do this, see http://help.sap.com/s4hana SAP S/4HANA Cloud <latest version> Additional Information Product Assistance Generic Information General Functions for the Key User Extensibility Custom Fields and Logic . Custom fields are then automatically included during the CSV and OData uploads.
The naming convention for custom fields is: YY1-<YOURLABELINUPPERCASE>_<predefined business context>, for example: YY1_MYCUSTOMFIELD_MIA indicates a custom field for an interaction. You can see the structure of your data in:
● The CSV template appended to the entries delivered by SAP.● In the OData metadata structure that is displayed when you log onto the system as follows: https://
<server&port>/sap/opu/odata/sap/cuan_import_srv/$metadata
Data Management Upload Interfaces 1705Interactions C U S T O M E R 13
5 Companies
Companies exist as interaction contacts with the type Corporate Account. The approach for uploading companies using OData and CSV is similar to that followed for interaction contacts, but with fewer attributes available.
In addition to the predelivered attributes defined, you can add customer-specific fields using the Custom Fields and Logic app. For more information about how to do this, see http://help.sap.com/s4hana SAP S/4HANA Cloud <latest version> Additional Information Product Assistance Generic Information General Functions for the Key User Extensibility Custom Fields and Logic . Custom fields are then automatically included during the CSV and OData uploads.
The naming convention for custom fields is: YY1-<YOURLABELINUPPERCASE>_<predefined business context>, for example: YY1_MYCUSTOMFIELD_MCA indicates a custom field for a company. You can see the structure of your data in:
● The CSV template appended to the entries delievered by SAP.● In the OData metadata structure that is displayed when you log onto the system as follows: https://
<server&port>/sap/opu/odata/sap/cuan_import_srv/$metadata
For CSV Upload, the ID_ORIGIN field is set to SAP_FILE_IMPORT. This is the default, but you can also define different ID origins. This allows you to update the company with different sources. If no ID is provided in the CSV file, it is generated automatically.
14 C U S T O M E RData Management Upload Interfaces 1705
Companies
6 Product Categories and Products
Product categories and products constitute master data rather than transactional data. Products can be categorized, for example, pens, ink cartridges, and erasers can be grouped in the category Stationery.
NoteSemantic Key for Products
The semantic key for products determines the uniqueness of a product record. The following fields are mandatory for product data:
● PRODUCT_ORIGIN: Origin of the product data● PRODUCT_ID: ID of the product data
If the product is related to a category, this relationship is expressed through the category assignment. In this case, the category ID within the product data is depicted as an assignment key.
Product categories can be set up in hierarchies: All categories are fixed elements of one particular hierarchy, and can be hierarchically structured amongst themselves by means of the parent category assignment.
The description of products and product categories is language-dependent. It consists of the language key , the product or product category name such as MR-750 or Stationery, and the product or product category description such as The MR-750 computer includes 32 GB RAM. or Stationery includes pens, ink cartridges, and erasers.
You can upload product category data and product data separately. In general, you must upload category data before you upload product data (exception: the upload of product data via OData service, see Import of Product Category and Product Data Using OData Services [page 92]). When you upload product data, you can include category ID and hierarchy ID of an existing product category to establish the corresponding assignment. If you do not need product category data, you can leave the fields related to the category empty.
When uploading product categories, you can import only one hierarchy per upload process.
If you want to update existing product or product category data and add new data, this is possible in one joint upload process. New data will be created while existing data will be overwritten.
Prerequisites for Product Data Upload
To import product data, you have to maintain the field PRODUCT_ORIGIN in the Self-Service Configuration app Define Origins of Product ID.
Data Management Upload Interfaces 1705Product Categories and Products C U S T O M E R 15
Upload of Product Attributes via Interaction Upload
If you upload interaction data and the system recognizes that a related product is missing, the system allows you to import product data with the upload of interactions. This option is available only for the initial upload of product data, not for the update of existing product data.
When a product is initially uploaded, it is created initially and the new technical key is stored as a reference at the PRODUCT node of the Interaction business object (CUAN_INTERACTION). If the same product is uploaded a second time, the system identifies the existing product and the key is stored again to avoid the creation of duplicates. The existing product is not updated. If you want to update the existing product data, you must use the dedicated product upload. A product that is imported via the interaction upload is available in Segmentation.
The import of products via interaction upload is not possible using the CSV import but with OData .
16 C U S T O M E RData Management Upload Interfaces 1705
Product Categories and Products
7 Best Practices and Troubleshooting
This section contains recommendations for obtaining optimum results during data upload. This includes information about the optimum package size, recommendations for system security and performance optimization, as well as troubleshooting tips if errors occur.
7.1 Recommended Package Sizes and Upload Sequence
Optimum package sizes for the different object types:
Table 4:
Object Type Recommended Initial Load
Multiple ● Parallel upload of entities is not allowed since this can lead to data inconsistencies.
● When you upload data for multiple object types initially, you should do so in the following upload sequence:1. Product categories2. Products3. Interaction Contacts4. Interactions
Data Management Upload Interfaces 1705Best Practices and Troubleshooting C U S T O M E R 17
Object Type Recommended Initial Load
Contacts OData
● When you import contacts, the data is processed asynchronously by default. This means that when you trigger a contact import, in most cases an OK response, such as a receipt notification, is returned almost immediately. An exception to this would be data uploads that might contain severe errors, such as parse or format errors, and so would not return an OK response but an error message. The data you upload lands in a staging area, where it is then further processed.To view the processing status of both contact and interaction uploads and to check for errors or success messages, you must launch the Import Monitor app (renamed from Integration Errors). In the event of errors, you can restart or discard the import in the Import Monitor.
● You can change the default setting by selecting the ForceSynchronousProcessing flag in the import header. If you select this flag, you can force imports to be processed synchronously. In this case, an error message will be returned as soon as an error is detected.
● Recommended load: 5000● More than 10000 will result in error● Data upload is all or nothing. In other words, if an error occurs during upload, no
data is uploaded. For this reason, it might make sense to upload smaller packages, for example, 10 x 500 entities. In terms of system performance, there is no significance difference in whether you upload 500 or 5000 entities. However you should consider network latency when deciding on the package size, which depends on the quality of the customer data.
Interactions NoteFor CSV and OData imports, import packages containing more than 1000 interactions are processed asynchronously by default. Packages with 1000 or fewer interactions are processed synchronously. You can change the default setting by selecting the ForceSynchronousProcessing flag in the import header. If you select this flag, you can force imports to be processed synchronously. In this case, an error message will be returned as soon as an error is detected. .
1. CSV○ Max. 10 000 (memory restricted)○ Recommended 5 000
○ TipYou can increase the upload to a maximum of 100 000 by adding a column IC_UPDATE_MODE to the CSV template and entering N (update mode N = no update) in each row. This means that no contact data is updated.
2. OData○ Max. 100 000○ Without products, 1 interest: 50 000○ With 5 products, 5 Interests: 5.000
18 C U S T O M E RData Management Upload Interfaces 1705
Best Practices and Troubleshooting
Object Type Recommended Initial Load
Products 20.000 (1 Language, no category assignment)
Product Categories 50.000 (1 Language)
Interests 50.000 (2 Languages)
How to Handle Errors Involving Interactions
Table 5:
Error / Error Message What It Means What You Can Do
CUAN_INTERACTION 000 Invalid entry in column &2: '&1'
Either:
● Configuration is missing● Invalid characters have been used● The format is incorrect
Maintain Configuration
Correct invalid entries: for example Phone numbers have to start with ‘+’ or ‘00’.
Timestamp is incorrect Microsoft Excel formats the timestamp incorrectly when opening the file.
Format the value in Microsoft Excel as follows:
1. Change the type of the field to number.
2. Remove all decimal places.3. Remove the separator.4. Enter a valid time
(YYYYMMDDhhmmss).5. Save
Special characters are not imported The data is not loaded in utf-8 encoding. Send data in utf-8 encoding. Use an editor that supports this.
CSV upload error: No content provided; empty upload
Either:
● The selected entity does not match the file content. For example, the entity Contacts has been selected for upload but the file contains Products.
● The file is really empty.● There are hidden characters in the
first column of the spreadsheet.
Select the correct option and the correct file.
Unspecific message from CSV upload: Contact your system administrator
The error is probably from the virus scanner, which is not set up correctly.
Open an incident.
Interactions cannot be locked, since locked by &1
Interactions or Contacts are locked by:
● Another load in parallel (same contact is locked in different sessions).
● A mass change is running on interactions.
Avoid loading interactions when contacts are being changed in parallel.
Data Management Upload Interfaces 1705Best Practices and Troubleshooting C U S T O M E R 19
Error / Error Message What It Means What You Can Do
Import failed Import failed because objects are locked by another process or because of other errors..
● In the event of lock errors, imports are automatically restarted again in the background until there are no more errors.
● In the event of other errors, imports are not automatically restarted.
7.2 Optimizing Performance During OData Service Calls
This section describes how to call an OData service in SAP Hybris Marketing Cloud in a way that ensures a high degree of system security and performance. The description uses CUAN_IMPORT_SRV as an example, but the method applies to all OData services in SAP Hybris Marketing Cloud.
Importing Data into the SAP Hybris Marketing Cloud System
1. Request an x-CSRF token and a session cookie by calling the metadata document, for example, https://<mkt.com>/sap/opu/odata/sap/cuan_import_srv/$metadata.
2. In the get request header, you must add the parameter name x-csrf-token and the value Fetch, as shown in the code snippet. This get request returns the x-CSRF token and session cookie in the response:
3. Create the payload with the data you want to post.4. Post the data via the corresponding endpoint and send the x-CSRF token and the session cookie that you
received in step 1.In the post request:○ In the parameter x-csrf-token enter the value from the token you received in step 1.○ In the parameter Content-type, enter the value application/json.○ Add the session cookie you received from the get metadata request, for example https://<mkt.com>/
sap.opu.odata/sap/cuan_import_srv/ImportHeaders.5. You should terminate the session cookie by calling the logoff service. For example, https://
<mkt.com>/sap/public/bc/icf/logoff. By doing this, you ensure that the session cookie and the x-CSRF token are no longer valid. In this get request, you have to add:○ The parameter ‘x-csrf-token’ and the value you received in step 1.○ The session cookie you received from the get metadata request.
Important Points to Note
● The session cookie will automatically terminate after 30 minutes idle time.● You should reuse the session cookie and the x-CSRF token for as long as you can. In other words, you should
try to avoid exceeding 30 minutes idle time.● By reusing the session cookie, you avoid having additional calls to generate a new cookie every time. This
leads to improved performance because you have to execute the get call only once.● By terminating the session cookie, you secure the system because the cookie and CSRF token can no longer
be used.
20 C U S T O M E RData Management Upload Interfaces 1705
Best Practices and Troubleshooting
Example
Code Syntax
************************************************************************** * Establish the connection* get request to fetch the CSRF Token and session cookie**************************************************************************lv_header_field-name = 'x-csrf-token'.lv_header_field-value = 'Fetch'.INSERT lv_header_field INTO TABLE lt_header_fields.TRY. IF ( lt_cookies IS INITIAL ). cl_cuan_http_helper=>s_get_instance( )->http_call( EXPORTING iv_destination = '<SM59_ENTRY>' iv_url = '/sap/opu/odata/sap/cuan_import_srv/$metadata' iv_method = 'GET' it_header_fields = lt_header_fields IMPORTING ev_status_code = lv_status_code ev_x_csrf_token = lv_x_csrf_token et_cookies = lt_cookies ) CLEAR lt_header_fields. lv_header_field-name = 'x-csrf-token'. lv_header_field-value = lv_x_csrf_token. INSERT lv_header_field INTO TABLE lt_header_fields. lv_header_field-name = 'Content-Type'. Lv_header_field-value = 'application/json'. INSERT lv_header_field INTO TABLE lt_header_fields. ENDIFCATCH cx_cuan_cpred_error INTO exc_cpred_error.* Error handlingENDTRY.
Code Syntax
*************************************************************************** * Create payload and * send it via post request to the SAP Hybris Marketing Cloud***************************************************************************WHILE lv_true = abap_true.* creating the payload with your data and store it in variable lv_body*...*... TRY. cl_cuan_http_helper=>s_get_instance( )->http_call( EXPORTING iv_destination = '<SM59_ENTRY>' iv_url = '/sap/opu/odata/sap/cuan_import_srv/ImportHeaders' iv_method = 'POST' iv_body_send = lv_body it_header_fields = lt_header_fields it_cookies = lt_cookies IMPORTING ev_body_receive = lv_body_receive ev_status_code = lv_status_code ). CATCH cx_cuan_cpred_error INTO exc_cpred_error.* Error handling ENDTRY. IF ( lv_status_code = '403' ).* generate new CSRF-Token and session cookie and try again go to step 1
Data Management Upload Interfaces 1705Best Practices and Troubleshooting C U S T O M E R 21
*...*... ENDIF.ENDWHILE.
Code Syntax
************************************************************************* * Terminate the session cookie*************************************************************************TRY. cl_cuan_http_helper=>s_get_instance( )->http_call( EXPORTING iv_destination = 'E3W' iv_url = '/sap/public/bc/icf/logoff' iv_method = 'GET' iv_body_send_as_string = lv_basis it_header_fields = lt_header_fields it_cookies = lt_cookies IMPORTING ev_body_receive = lv_body_receive ev_status_code = lv_status_code ).CATCH cx_cuan_cpred_error INTO exc_cpred_error.* Error handlingENDTRY.
22 C U S T O M E RData Management Upload Interfaces 1705
Best Practices and Troubleshooting
8 Import Data (Using CSV Upload)
Import data in CSV file format
With the Import Data app, you can upload data for the following object types in Comma Separated Value (CSV) file format:
Table 6:
Data Management Object Types Other Object Types
Corporate Accounts Custom Business Objects
Contacts Brands
Account Team Members Custom Dimensions
Product Categories Actual and Committed Spend
Products Survey Response
Interests Campaign Success
Interactions -
Marketing Locations -
Marketing Beacons -
Subscriptions -
Prerequisites
● The SAP Fiori business role Administrator-Marketing (SAP_BR_ADMINISTRATOR_MKT) has been assigned to your user.
● You have read the important information about the object type you want to upload. This information is linked under Related Information below.
Importing CSV Files
The import process involves two steps: first, you download a template that contains the fields required for the different object types that can be uploaded, then you upload the filled template to the system.
1. Go to Import Data.
Data Management Upload Interfaces 1705Import Data (Using CSV Upload) C U S T O M E R 23
2. Select the object type for which you want to upload data and choose Download CSV Template.3. Enter the required data exactly as described in the detailed instructions for the object type at the top of the
template.4. To ensure correct handling of special characters, store the CSV file in the UTF-8 code page.5. Back on the Import Data screen, browse for the file and choose Import.
Checks During Upload
During the upload, the system performs the format checks and conversions listed here.
The content validation stops with the first error. The system only saves and uploads the content if no errors occur.
● Date valuesThe SAP date format (YYYYMMDD) and the date format specified in the user profile are allowed.
● Integer values:Integer values with or without separators are allowed, for example 1.317.208.
● Timestamp values:The SAP date, SAP date & time (YYYYMMDDhhmmss), or the time stamp long (YYYYMMDDhhmmss,aaaaaaa) values are allowed with or without separators.
● Email values are allowed in the following format: {name}@{domain}
Additional Upload Interfaces
In addition to this manual upload option, you can also use OData services to upload interactions, interaction contacts, interests, product categories, and products.
● For detailed information about importing the master data entities interaction contacts, interactions, corporate accounts (companies), interests, product categories, and products using OData service CUAN_IMPORT_SRV, see the Data Management Upload Interfaces Guide for the current release on SAP Help Portal at http://help.sap.com/mkt SAP Hybris Marketing SAP Hybris Marketing Product PageIntegration . .
● The OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV is used for standard SAP Hybris Marketing Cloud integration with SAP Hybris Cloud for Customer. It is used in marketing-driven, and sales-driven processes. For information about replicating SAP Hybris Cloud for Customer business documents to SAP Hybris Marketing interactions using the OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV, see Import of Business Documents Using an OData Service.
Related Information
Corporate Accounts [page 25]Contacts [page 25]Account Team Members [page 26]
24 C U S T O M E RData Management Upload Interfaces 1705
Import Data (Using CSV Upload)
Product Categories [page 26]Products [page 27]Interactions [page 28]Interests [page 29]Marketing Locations [page 29]Marketing Beacons [page 30]Custom Dimensions [page 30]Actual and Committed Spend [page 31]Campaign Success [page 33]Subscriptions [page 32]Survey Response [page 34]
8.1 Corporate Accounts
Information to consider before uploading data for corporate accounts using CSV upload.
Corporate Accounts (Companies)
● When corporate accounts are uploaded, the origin of the content is set to SAP_FILE_IMPORT by default.● If you want to upload the origin of contact IDs, you add the column ID_ORIGIN to the structure.● If there is a value for ID_ORIGIN, the ID column must also have a value.● If IDs are provided they must be unique and cannot be used more than once in the same CSV file.● The uploaded data is available in Corporate Accounts. You can view details for individual corporate accounts
in the corresponding fact sheet.● The additional fields are available as an attribute in Segmentation, and on the Additional Data facet of the
Corporate Account fact sheet.
8.2 Contacts
Information to consider before uploading data for contacts using CSV upload.
NoteIf you upload data for more than one of the following entities, you must observe the following upload sequence:
1. Product categories2. Products3. Contacts4. Interactions
Data Management Upload Interfaces 1705Import Data (Using CSV Upload) C U S T O M E R 25
Note the following points:
1. When contacts are uploaded, the origin of the content is set to SAP_FILE_IMPORT by default.2. If you want to upload the origin of contact IDs, add the column ID_ORIGIN to the structure. If there is a value
for ID_ORIGIN, the ID column must also have a value. If IDs are provided they must be unique and cannot be used more than once in the same CSV file.
3. The uploaded data is available under Contacts and as a filter value in the Profile Dashboard.4. The additional fields are available in the Additional Data section, on the Personal Data facet, of the Contact
fact sheet, and as an attribute in Segmentation.5. Marketing Permissions for Contacts:
Marketing permissions are used to control whether or not communication with a contact is allowed, using a certain communication medium, for example, email. Currently, email is supported as the communication medium. It is used during an automated campaign. This marketing campaign is one with an automatic system reaction, such as a trigger to open an e-mail or click a link within an email.Marketing permissions can be created or updated during the import of contacts. Marketing permissions are created by providing the email address field (SMTP_ADDR or SMTP_ADDR_2), and the corresponding opt-in field (OPT_IN_SMTP_ADDR or OPT_IN_SMTP_ADDR_2).
8.3 Account Team Members
Information to consider before uploading data for account team members using CSV upload.
● Account Team Members○ Ensure that the roles you want to assign exist in the system. You set up team member roles in the and
that each role is assigned only once per interaction contact. If you try to upload multiple role assignments per interaction contact, only the last role assignment is taken.
○ Ensure that the ID_ORIGIN you want to use is not set to shareable in the Origin of Contact ID app.
○ CautionUpdate mode is full: The account team member data you upload always overwrites any existing data in the system. If you want to keep the existing assignments in the system, add these assignments to the spreadsheet to ensure that they are part of the new upload. If you don't add them, they will be overwritten by the new upload.
8.4 Product Categories
Information to consider before uploading data for product categories using CSV upload.
NoteIf you upload data for more than one of the following entities, you must observe the following upload sequence:
26 C U S T O M E RData Management Upload Interfaces 1705
Import Data (Using CSV Upload)
1. Product categories2. Products3. Contacts4. Interactions
Product Categories
If you want to segment consumers who have bought a certain product or products from a specific category, you can use the uploaded data, including additional fields, for segmentation purposes in Segmentation.
● Semantic Key: The semantic key for products determines the uniqueness of a product category record. The following fields are mandatory for product category data:○ Provide the ID and the hierarchy ID in the CSV file.○ If the product category relates to more than one language, create several rows for the same product
category. Generate a separate line for each language, which is identical except for the language.
8.5 Products
Information to consider before uploading data for products using CSV upload.
NoteIf you upload data for more than one of the following entities, you must observe the following upload sequence:
1. Product categories2. Products3. Contacts4. Interactions
Products
If you want to segment consumers who have bought a certain product or products from a specific category, you can use the uploaded data, including additional fields, for segmentation purposes in Segmentation.
● Semantic Key: The semantic key for products determines the uniqueness of a product record. The following fields are mandatory for product data:○ PRODUCT_ORIGIN: Origin of the product data○ PRODUCT_ID: ID of the product data
Data Management Upload Interfaces 1705Import Data (Using CSV Upload) C U S T O M E R 27
8.6 Interactions
Information to consider before uploading data for interactions using CSV upload.
● Provide the origin and the ID in the CSV file.● Semantic Key:
The semantic key for interactions determines the uniqueness of an interaction record.The following fields are mandatory:
Table 7:
Semantic Key What It Means
ID_ORIGIN Origin of the interaction contact data
ID External ID of the interaction contact data
IA_TYPE Interaction type
COMM_MEDIUM Communication medium
TIMESTAMP UTC timestamp in long form (YYYYMMDDhhmmssmmmuuun)
RecommendationTimestamp entries are sometimes incorrectly converted to decimal numbers. To prevent incorrect converting, deactivate decimal notation and 1000 separating commas in the cell formatting settings.
NoteThe following additional semantic key fields are not checked during import. They can have values or remain empty.
--
SOURCE_OBJECT_TYPE Object type of the source object, for example, an opportunity in SAP Hybris Cloud for Customer.
SOURCE_OBJECT_ID Object ID of the source object, for example, the GUID of the SAP Hybris Cloud for Customer opportunity, or the original post ID of the relevant social media network (such as TW or FB).
28 C U S T O M E RData Management Upload Interfaces 1705
Import Data (Using CSV Upload)
● By filling the field IC_UPDATE_MODE you can control how the contact data is updated. The following update modes are available for the field IC_UPDATE_MODE:
Table 8:
Update Code Type of Update What Is Updated
N No Update Only the Contact ID is determined. If no contact is found, an error is triggered
F Full Update All existing fields are overwritten by imported fields. If empty fields are imported, these imported fields overwrite the corresponding fields with values of the facet.
D Delta All imported fields that have values, overwrite existing fields of the same facet of the contact. If the contact doesn't already exist, it is created.
● If you want to enter multiple interests for one interaction, create several rows for the same interaction due to the flat structure. In this case, only the interest differs, all other columns remain the same.
● The uploaded data is available in the Interactions facets of the corporate account fact sheet and the contact profile.
● In addition, you can use the uploaded data including the additional fields for segmentation purposes under Segmentation, such as segmenting consumers who have abandoned their shopping carts in your Web shop.
8.7 Interests
Information to consider before uploading data for interests using CSV upload.
● The first column INTEREST_ITEM is fixed. If needed, you can add language columns in any order, using the required ISO language codes.
● There must be at least one description for an interest.
8.8 Marketing Locations
Information to consider before uploading data for marketing locations using CSV upload.
The values for LOC_ORIGIN and TYPE must exist in the system before you can import your data.
Semantic Key: The semantic key for marketing locations determines the uniqueness of a marketing location record. The LOC_ID and LOC_ORIGIN are the semantic key for a marketing location.
The following fields are mandatory for marketing locations:
● LOC_ID: Location ID● LOC_ORIGIN: Origin of Location ID● TYPE: Location Type● MKT_AREA_ID : Marketing Area ID
If a combination of LOC_ID and LOC_ORIGIN doesn’t exist in the system, the marketing location is created.
Data Management Upload Interfaces 1705Import Data (Using CSV Upload) C U S T O M E R 29
If a combination of LOC_ID and LOC_ORIGIN exists in the system, the marketing location is updated.
The following fields have system default values:
● VALID_FROM_DATE. If initial, 0000-00-00 is used● VALID_TO_DATE. If initial, 9999-12-31 is used
8.9 Marketing Beacons
Information to consider before uploading data for marketing beacons using CSV upload.
The following fields are mandatory for marketing beacons:
● TYPE: Defaults to iBeacon. Currently iBeacon is the only supported beacon protocol.● ID: The unique external ID of the beacon.● DESCRIPTION: Description of the beacon. Used to assist in searching for a beacon.● UUID: Beacon UUID. Mandatory if TYPE= iBeacon.● MAJOR: Beacon major number. Mandatory if TYPE= iBeacon.● MINOR: Beacon minor number. Mandatory if TYPE= iBeacon.
If a combination of TYPE, ID, UUID, MAJOR, MINOR exists in the system, the marketing beacon is updated.
8.10 Custom Business Objects
Information to consider before uploading data for custom business objects using CSV upload.
● From the table, select the custom business object you want to import. The CSV template you download contains information for the selected custom business object.
● The semantic keys are the fields that are marked as KEYS while creating the custom business object.● For defined semantic keys, when you upload data, the previous data is overwritten with the latest one.● You can use the uploaded data for segmentation purposes in the Segmentation Models application.
8.11 Custom Dimensions
Information to consider before importing your custom dimension data using CSV upload.
For the upload of values for a custom dimension, the following applies (custom dimensions must be defined in the Custom Dimensions self-service configuration application):
● The file must contain the name of the custom dimension for which values are uploaded. You can only upload values for one custom dimension for a specific file.For example, the custom dimension with ID LOB has been defined, where LOB represents Line of Business. The upload file for values for LOB custom dimension must be as follows:* LOB
30 C U S T O M E RData Management Upload Interfaces 1705
Import Data (Using CSV Upload)
ID,LANGUAGE,DESCRIPTIONINSURE,E,InsuranceINVEST,E,InvestmentsCONSULT,E,Consulting
8.12 Actual and Committed Spend
Information to consider before importing your actual and committed spend data using CSV upload.
For the upload of actual and committed spend, the following fields are available:
● SOURCE IDThe source ID is optional and contains 30 characters. The source ID indicates the source of the spend information, for example, it can indicate the agency from which the spend originates.
● CAMPAIGN IDThe campaign ID is mandatory and contains 10 characters. Campaigns have been created in the Campaigns application, or in the Detailed Campaign Spend application.
● SPEND TYPESpend types are optional and have been defined in the Spend Types self-service configuration application.
● SPEND ITEM IDThe spend item ID is optional and contains 10 numeric characters. If specified, the spend item ID must exist in the campaign and the spend type must match. If no spend type is specified, the spend type is derived from the spend item of the campaign
● REFERENCE DATEThe date is mandatory and is used for currency conversion. The reference date must be a valid date in the following format YYYYMMDD.
● ACTUAL SPEND AMOUNTThe actual spend amount is mandatory and zero values are allowed. The actual spend amount represents the actual costs that have been incurred from marketing activities.
● COMMITTED SPEND AMOUNTThe committed spend amount is mandatory and zero values are allowed. The committed spend amount represents the amount of already known spend based on existing requests and orders for an item, for example, from a purchasing system.
● CURRENCYCurrency is mandatory and is the code for the spend amount.
For the upload of actual and committed spend, the following rules apply:
● If the values for a combination of source ID, campaign ID, spend type, spend item ID, and reference date are being uploaded for the first time, the corresponding values for this combination (amounts and currency) from the local file are uploaded. If they are being uploaded a subsequent time, the corresponding values for this combination are updated with the values from the new local file.
● Use a period (.) to separate decimals in amounts.● If a field is optional and you do not want to include a value for it in the file, insert a comma (,) in place of the
excluded value.
Data Management Upload Interfaces 1705Import Data (Using CSV Upload) C U S T O M E R 31
● Actual and committed spend can be uploaded at any level. You are responsible for uploading data at the level that is relevant for your campaign and your business processes. For example, you can upload data at the following levels:○ Campaign level○ Campaign and spend level○ Campaign and spend item level
If there is invalid data in the local file, no actual and committed spend amounts are uploaded and saved.
The following is an example of the content of an input file:
SOURCE ID,CAMPAIGN ID TYPE,SPEND ITEM ID,REFERENCE DATE,ACTUAL SPEND AMOUNT,COMMITTED SPEND AMOUNT,CURRENCY AGENCY
A,11111,PRINT,,20160228,9999.99,1111.11,EUR
,22222,,1,20160315,8888.88,2222.22,EUR
,22222,TV,2,20160322,7777.77,5555.55,EUR
,33333,,,20160331,4444.44,3333.33,EUR
8.13 Subscriptions
Information to consider before uploading data for subscriptions using CSV upload.
● Provide the ID and the ID Origin of the Contact in the CSV file.● Semantic Key: The semantic key for interactions determines the uniqueness of an interaction record.
NoteWhen using the CSV upload for subscriptions, you can also upload general marketing permissions by not entering a Communication Category ID.
The following fields are mandatory:
Table 9:
Semantic Key What It Means
ID_ORIGIN Origin of the interaction contact data
ID External ID of the interaction contact data
MKT_PERM_COMM_MEDIUM Outbound Communication Medium for which marketing permission has been given
COMM_MEDIUM Communication medium
32 C U S T O M E RData Management Upload Interfaces 1705
Import Data (Using CSV Upload)
Table 10: Other Fields
Semantic Key What It Means
TIMESTAMP This field is optional. If nothing is entered, the interaction is given the current timestamp.
COMM_CAT_ID Communication Category ID for which the subscription is set. If nothing is entered, a general Marketing Permission for the specified ID / ID Origin and Communication Medium is set.
OPT_IN This field is mandatory. Y must be entered for an opt-in, N for an opt-out.
8.14 Campaign Success
Information to consider before uploading data for campaign success using CSV upload.
Choose the campaign category for which you want to upload data. The CSV template is generated dynamically based on your selection. Each campaign category is associated to a process type, which determines the campaign type. You can upload campaign success data for campaign categories associated to the following process types:
● Externally-Executed Campaigns● Facebook Campaigns● Paid Search Campaigns
Assigning Data to Campaigns
For externally-executed, Facebook, and Paid Search campaigns, if the value for EXT_CAMPAIGN_ID already exists in the system, the data is automatically assigned to the campaign with this ID.
If the EXT_CAMPAIGN_ID does not exist in the system, an unassigned data set is created and you can assign it to a campaign later.
NoteEXT_CAMPAIGN_ID is the campaign ID that was generated in an external system, in Facebook, or in Google AdWords when the campaign was created, or the externally-generated or Facebook campaign ID that you manually assigned to your campaign in the system. This is not the campaign ID generated when you create a campaign inSAP Hybris Marketing Cloud
.
When data is uploaded for an existing EXT_CAMPAIGN_ID and REPORTING_DATE, the previous data is overwritten with the latest KPIs for that campaign.
Data Management Upload Interfaces 1705Import Data (Using CSV Upload) C U S T O M E R 33
8.15 Survey Response
Import survey responses into SAP Hybris Marketing Cloud.
To import survey responses into SAP Hybris Marketing Cloud, use an OData service. For more information, see Import of Survey Responses Using an OData Service.
34 C U S T O M E RData Management Upload Interfaces 1705
Import Data (Using CSV Upload)
9 Import of Data Using OData Service CUAN_IMPORT_SRV
You can import interaction contacts, interactions, corporate accounts (companies), interests, product categories, and products into SAP Hybris Marketing Cloud using OData service CUAN_IMPORT_SRV. We recommend that you do not use batch processing ($batch) because error handling is more complex. A batch request can return an OK code and still have errors that have to be looked up in the response body. You can still send multiple entities in one POST request without using batch processing. See chapter 9.2 Importing Interaction Contacts Using OData Service for an example of how to do this for interactions contacts. The same procedure also applies to all other entities you import with this service.
NoteNote about importing business documents: The OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV should be used to create interactions from business documents from any source system. In contrast to OData service CUAN_IMPORT, CUAN_BUSINESS_DOCUMENT_IMP_SRV (Business Documents) enables you to change interactions. Each business document is represented by an interaction, and is identified by the key of the business document in the external system. The OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV is used for standard integration of SAP Hybris Marketing with SAP Hybris Cloud for Customer. It is also used in marketing-driven and sales-driven processes. For information about using the OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV see https://help.sap.com/http.svc/rc/2f2c6c46ef044da7a62c01ba617d68b4/1702%20YMKT/en-US/InterfaceDocuBusinessDocumentImport_1702.pdf.
Prerequisites
● You have created your communication user, who is allowed to post one or more objects to the system.
Mass Import
The OData protocol allows the import or update of one object record (contact, interaction, company, product, or product category) only. To achieve the mass create and mass update of records, a dummy entity (import header) is created by deep insert. You perform an insert on the entity Import Header and create interaction contacts, interactions, companies, products, or product categories as subnodes of the import header. The metadata of the service is read by means of the OData call:
● Request URI: https://<server&port>/sap/opu/odata/sap/CUAN_IMPORT_SRV/$metadata ● HTTP Method: Get
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 35
Additional Fields
If you have created additional, custom fields for your structures, you can view the naming conventions for these fields in the OData Service using the Request URI listed above.
9.1 Structure of OData Service CUAN_IMPORT_SRV
The CUAN_IMPORT_SRV OData service consists of the following entity sets and entity types:
Table 11:
Entity Set Entity Type Entity Type Description
AccountTeamMembers AccountTeam Account Team Member
Companies Company Company
Contacts Contact Interaction Contact
ContactFacets ContactFacet Additional facets
ContactMarketingAttributes ContactMarketingAttributes Marketing attributes
ContactMarketingPermissions ContactMarketingPermission Marketing permissions
ImportHeaders ImportHeader Technical Import Message Header
Interactions Interaction OData Import Interaction
InteractionAdditionalObjectReferences
InteractionAdditionalObjectReference
Additional object references of an interaction
InteractionDigitalAssetSets InteractionDigitalAsset Digital Assets belonging to an interaction
InteractionInterests InteractionInterest Item of interest belonging to an interaction
InteractionOffers InteractionOffer Offers belonging to an interaction
InteractionTags InteractionTag Tags belonging to an interaction
InteractionProducts InteractionProduct Product belonging to an interaction
Products Product OData Import Product
ProductCategories ProductCategory OData Import Product Category
Interests Interest OData Import Interest
36 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Entity Type "ImportHeader"
The entity type ImportHeader describes the technical header of an import of interaction contacts. The properties Id, Timestamp, and UserName are used for logging the external data request. For every service request a new, unique ID is required. If no ID is provided, it is defaulted internally.
The SourceSystemId property allows you to distinguish between different source systems. The value is later on used as prefix to create unique external contact IDs stored as a facet while a facet is a reference to an external system (as one and the same interaction contact can have different IDs in different systems such as ERP, Twitter, or Facebook). The SourceSystemId is a mandatory attribute. Id, Timestamp, and UserName of the back-end user are defaulted when no values are given.
ImportHeader Meta Information
Table 12:
Property Description Edm Core Type Max Length Mandatory Key
Id Unique technical identifier of import run. If this is not provided, it is defaulted internally.
If you provide the same ID twice, it will lead to an error code 500.
Edm.String 0 X
Timestamp Timestamp of the import run in the format: number of milliseconds since midnight Jan 1, 1970. For example: "/Date(1406014140922)/"
Edm.DateTime 0
UserName User name Edm.String 0
SourceSystemType
Type of source system EDM.string 3
SourceSystemId Identifier of source system Edm.String 20 X
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 37
Property Description Edm Core Type Max Length Mandatory Key
ForceSynchronousProcessing
● This flag is deselected by default, which means that uploaded data is processed asynchronously. On upload, a success message is output immediately, unless there are errors such as authorization issues or bad requests. Objects are uploaded to the staging area and processed successively from there. All status messages can be displayed in the Import Monitor app.
● Asynchronous processing is the default for contacts. In the case of interactions, the default applies if more than 1000 interactions are uploaded.
● You can force imports to be processed synchronously by setting this flag. In this case, an error message will be returned as soon as an error is detected. Such error messages are output in the Import Monitor app.
Edm.Boolean
Entity Type "Account Team Member"
The entity type AccountTeamMembercontains all attributes that are required to assign team members to interaction contacts (company or person). Interaction contacts are identified by the information filled in the attributes InteractionContactId and InteractionContactIdOrigin. The UserId is the identifier of a user in the system that shall be assigned as team member to the interaction contact. The role is the business role in which the team member acts for this interaction contact.
Table 13:
Property Description Edm Core Type Max Length Key
InteractionContactId Identifier of an interaction contact facet Edm.String 100 X
InteractionContactIdOrigin Origin of Interaction Contact ID Edm.String 20 X
UserId User ID of team member Edm.String 12 X
38 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Description Edm Core Type Max Length Key
Role Role Edm.String 4 X
Entity Type "Company"
The entity type Company contains all attributes that are required to create a company (corporate account) with its main facets. If the ID of the company is provided by the external source system, the system can identify the company for later updates. The IdOrigin property must exist in the system either as a value configured by the customer in the Self-Service Configuration app Define Origins of Contact ID.
If no IdOrigin is provided, the system sets a technical ID Origin (SAP_ODATA_IMPORT) and concatenates the provided ID with the provided source system ID (which is derived from the property SourceSystemId of the ImportHeader. However it is not recommended to provide no ID Origin since you lose the information about the source of the data. Therefore, you should always provide an ID Origin, which describes the origin of the data and which must be unique per connected source system.
ExampleEMailAddress Property:
A company can write e-mails to a company. The EMailAddress property is the ID of this company used in this communication channel. The EMailAddress is only one facet of this company. The company may use other facets (such as Facebook, Google+, or Twitter) in other communication channels.
If the ID of the company is not provided by the external source system, it will be generated in the back-end system. In this case, an update of a company is not possible. The result ID of the update will be stored in attribute SAP_ODATA_IMPORT of the facet ID_ORIGIN, whether the ID of the company has been provided or not.
Company Meta Information
Table 14:
Property Description Edm Core Type Max Length Key
Id Identifier provided by external system Edm.String 100 X
IdOrigin Origin or source of ID Edm.String 20 X
Timestamp Timestamp
Format: number of milliseconds since midnight Jan 1, 1970. For example: "/Date(1406014140922)/"
Edm.DateTime 0
City City as part of postal address Edm.String 40
CountryDescription Name of country Edm.String 40
EMailAddress E-mail address Edm.String 241
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 39
Property Description Edm Core Type Max Length Key
EMailOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for e-mail address
Edm.String 1
FacebookId Identifier for Facebook Edm.String 255
FacebookOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for Facebook
Edm.String 1
FaxNumber Fax number
Format: +country code region code + fax number e.g. +49 6227 123456
Edm.String 30
FaxOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for fax number
Edm.String 1
GooglePlusId Identifier for Google + Edm.String 255
GooglePlusOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for Google +
Edm.String 1
HouseNumber House number as part of postal address Edm.String 10
ImageURI Uniform Resource Identifier of image Edm.String 1000
LanguageDescription Name of communication language Edm.String 40
Latitude Geographical coordinate Edm.Decimal 0
Longitude Geographical coordinate Edm.Decimal 0
SpatialReferenceIdentifier Spatial Reference Identifier Edm.String 10
MobilePhoneNumber Phone number for mobile
Format: +country code region code + phone number e.g. +49151123456
Edm.String 30
40 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Description Edm Core Type Max Length Key
MobilePhoneOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for mobile contact
Edm.String 1
MobileSMSOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for mobile SMS
Edm.String 1
Name Name of company Edm.String 80
Obsolete Contact is obsolete Edm.Boolean 0
PhoneNumber Phone number for mobile
Format: +country code region code + phone number e.g. +49151123456
Edm.String 30
PhoneOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for mobile contact
Edm.String 1
PostalCode Postal code as part of postal address Edm.String 10
RegionDescription Name of region Edm.String 40
SAPCRMBusinessPartnerId SAP CRM Business Partner identifier Edm.String 10
SAPCRMMarketingProspectId SAP CRM Marketing Prospect identifier Edm.String 10
Street Street as part of postal address Edm.String 60
TwitterId Identifier for Twitter Edm.String 255
TwitterOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for Twitter
Edm.String 1
WebSite Web site Edm.String 1,000
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 41
Entity Type "Contact"
The entity type Contact contains all attributes that are required to create an interaction contact with its main facets.
If the ID of the contact is provided by the external source system, the system can identify the contact for later updates. The IdOrigin property must exist in the system either as a value configured by the customer in the Self-Service Configuration app Define Origins of Contact ID .
If no IdOrigin is provided, the system sets a technical ID Origin (SAP_ODATA_IMPORT) and concatenates the provided ID with the provided source system ID (which is derived from the property SourceSystemId of the ImportHeader. However it is not recommended to provide no ID Origin since you lose the information about the source of the data. Therefore, you should always provide an ID Origin, which describes the origin of the data and which must be unique per connected source system.
Some of the Contact properties are identifiers for facets under which a contact is known in the outside world.
ExampleEMailAddress Property:
A contact can write mails to a company. The EMailAddress property is the ID of this contact used in this communication channel. The EMailAddress is only one facet of this contact: The contact may use other facets (such as Facebook, Google+, or Twitter) in other communication channels.
If the ID of the contact is not provided by the external source system, it will be generated in the back-end system. In this case an update of a contact is not possible.
The result ID of the update will be stored in attribute SAP_ODATA_IMPORT of the facet ID_ORIGIN, if the ID of the contact has been provided or not.
A contact can be classified to be used in different processes. As contact (property: IsContact = true) for persons acting as contact for an account (B2B) and as a consumer (property: IsConsumer = true) that acts as an account (B2C). A person can be both a contact and a consumer at the same time.
Contact Meta Information
Table 15:
Property Description Edm Core Type Max Length
Key
Id Identifier provided by external system Edm.String 100 X
IdOrigin Origin or source of ID Edm.String 20 X
Timestamp Timestamp
Format: number of milliseconds since midnight Jan 1, 1970. For example: "/Date(1406014140922)/"
Edm.DateTime 0
City City as part of postal address Edm.String 40
CompanyId ID of a company for which a person acts as contact Edm.String 100
42 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Description Edm Core Type Max Length
Key
CompanyIdOrigin Origin or source of company ID Edm.String 20
CountryDescription Name of country Edm.String 40
CustomerName Name of customer for which a person acts as contact
Edm.String 40
DepartmentDescription Name of department type (classification as contact)
Edm.String 40
EMailAddress First email address Edm.String 241
EMailOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for e-mail contact for 1st e-mail address
Edm.String 1
EMailAddress2 2nd e-mail address Edm.String 241
EMail2OptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for e-mail contact for 2nd e-mail address
Edm.String 1
EMailAddress3 3rd e-mail address Edm.String 241
EMail3OptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-In for e-mail contact for 3rd eMail address
Edm.String 1
FacebookId Identifier for Facebook Edm.String 255
FacebookOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for Facebook
Edm.String 1
FaxNumber Fax number
Format: +country code region code + fax number e.g. +49 6227 123456
Edm.String 30
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 43
Property Description Edm Core Type Max Length
Key
FaxOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for fax number
Edm.String 1
FirstName First name Edm.String 40
FullName Full name Edm.String 80
FunctionDescription Name of job function (classification as contact) Edm.String 40
GenderDescription Gender description Edm.String 40
GooglePlusId Identifier for Google + Edm.String 255
GooglePlusOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for Google plus
Edm.String 1
HouseNumber House number as part of postal address Edm.String 10
ImageURI Uniform Resource Identifier of image Edm.String 1000
IndustryDescription Name of industry (classification as contact) Edm.String 40
IsConsumer Indicates whether person is a consumer Edm.Boolean 0
IsContact Indicates whether person acts as contact for an account
Edm.Boolean 0
LanguageDescription Name of communication language Edm.String 40
LastName Last name Edm.String 40
Latitude Geographical coordinate Edm.Decimal
Longitude Geographical coordinate Edm.Decimal
MaritalStatusDescription
Marital status description Edm.String 20
MobilePhoneNumber Phone number for mobile
Format: +country code region code + phone number e.g. +49151123456
Edm.String 30
44 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Description Edm Core Type Max Length
Key
MobilePhoneOptin Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for mobile contact
Edm.String 1
MobileSMSOptin Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for mobile SMS
Edm.String 1
Obsolete Contact is obsolete Edm.Boolean 0
PhoneNumber Phone number
Format: +country code region code + phone number e.g. +49151123456
Edm.String 30
PhoneOptin Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for phone contact
Edm.String 1
PostalCode Postal code as part of postal address Edm.String 10
PostalOptin Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for postal contact
Edm.String 1
RegionDescription Name of region Edm.String 40
SAPCRMBusinessPartnerId SAP CRM Business Partner identifier (classification as contact)
Edm.String 10
SAPCRMMarketingProspectId
SAP CRM Marketing Prospect identifier Edm.String 10
SAPERPAccountId SAP ERP Account identifier (classification as contact)
Edm.String 10
SAPERPConsumerAccountId SAP ERP Consumer account identifier (classification as consumer)
Edm.String 10
SAPERPContactId SAP ERP Contact identifier (classification as contact)
Edm.String 10
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 45
Property Description Edm Core Type Max Length
Key
SAPHybrisConsumerAccountId
SAP Hybris Consumer account identifier (classification as consumer)
Edm.String 100
Street Street as part of postal address Edm.String 60
TitleDescription Title description Edm.String 40
TwitterId Identifier for Twitter Edm.String 255
TwitterOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for Twitter
Edm.String 1
Entity Type "ContactFacet"
If additional facets are needed, you must use the entity set ContactFacets based on the entity type ContactFacet. For every additional facet one instance of the ContactFacet entity type must be provided.
ContactFacet Meta Information
Table 16:
Property Description Edm Core Type Max Length Key
Id Facet Identifier Edm.String 255 X
IdOrigin Origin of facet identifier (values defined in Customizing view CUANV_CE_ORIGIN)
Edm.String 20 X
Timestamp (Creation) Timestamp of facet
Format: number of milliseconds since midnight Jan 1, 1970. For example: "/Date(1406014140922)/"
Edm.DateTime 0
OptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Opt-in for contact facet
Edm.String 1
46 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
If the ID of the contact is provided by the external source system, the system can identify the contact for later updates. The IdOrigin property must exist in the system either as a value configured by the customer in the Self-Service Configuration app Define Origins of Contact ID .
Entity Type "ContactLocation"
If contacts should be assigned to a marketing location, you must use the entity set ContactLocations based on the entity type ContactLocation.
Table 17: ContactLocation Meta Information
Property Description Edm Core Type Max Length Key
LocationIdOrigin Origin of a location identifier (values defined in Customizing view CUANV_LOC_ORI)
Edm.String 30 X
LocationId Identifier of a location Edm.String 50 X
Entity Type "ContactMarketingAttribute
If marketing attributes are needed, you must use the entity set ContactMarketingAttributes based on the entity type ContactMarketingAttribute. For every marketing attribute, one instance of the ContactMarketingAttribute entity type must be provided.
Table 18: ContactMarketingAttribute Meta Information
Property Description Edm Core Type Max Length Key
CategoryId External identifier for marketing category
Edm.String 75 X
CategoryDescription
Description of marketing category
Edm.String 40 X
LanguageDescription
Language in which category description is provided
Edm.String 16 -
Value Value of marketing attribute
Edm.String 255 X
Either CategoryId or CategoryDescription can be used to identify a marketing category. CategoryDescriptions are language dependent. LanguageDescription can be used to set the language of a CategoryDescription. Language belonging to LanguageDescription must exist in the system otherwise language of communication user will be used. The value is language independent.
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 47
Entity Type "ContactMarketingPermission"
If additional marketing permissions are needed, you must use the entity set ContactMarketingPermissions based on the entity type ContactMarketingPermission. For every additional marketing permission, one instance of the ContactMarketingPermission entity type must be provided.
Table 19: ContactMarketingPermission Meta Information
Property Description Edm Core Type Max Length Key
Id Facet Identifier Edm.String 255 X
IdOrigin Origin of facet identifier (values defined in Customizing view CUANV_CE_ORIGIN)
Edm.String 20 X
Timestamp (Creation) Timestamp of facet
Format: number of milliseconds since midnight Jan 1, 1970. For example: "/Date(1406014140922)/"
Edm.DateTime 0 -
OptIn Consent Edm.String 1 -
OutboundCommunicationMedium
Communication to which the consent is given
Edm.String 20 X
CommunicationDirection
Whether the direction of permission is inbound (I) or outbound (O)
Edm.String 1 X
CommunicationCategoryId
Id of a Communication Category available in the system (e.g. newsletter)
Edm.String 10 -
If the ID of the contact is provided by the external source system, the system can identify the contact for later updates. The IdOrigin property must exist in the system either as a value configured by the customer in the Self-Service Configuration app Define Origins of Contact ID .
The OutboundCommunicationMedium property must exist in the system either as delivered value by SAP, or as a value configured by the customer in the Self-Service Configuration app Manage Interaction Content.
The CommunicationDirection property is not a required field. If you enter nothing, the default is O for outbound.
The CommunicationCategoryId must available in the system. The CommunicationCategoryId could represent, for example, a newsletter for which permission is given or withdrawn.
Associations for Interaction Contacts
You have the option to create several interaction contacts with several additional facets by using one OData request.
48 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
The relations are as follows:
Table 20:
Associations Principal Entity Cardinality of Principal Entity
Dependent Entity Cardinality of Dependent Entity
CompanyContactFacets
Company One ContactFacet Many
CompanyContactMarketingAttribute
Company One ContactMarketingAttribute
Many
CompanyContactMarketingPermissions
Company One ContactMarketingPermission
Many
ContactContactFacets
Contact One ContactFacet Many
ContactContactMarketingAttributes
Contact One ContactMarketingAttribute
Many
ContactContactMarketingPermissions
Contact One ContactMarketingPermission
Many
HeaderContact ImportHeader One Contact Many
HeaderInteraction ImportHeader One Interaction Many
InteractionInteractionInterests
Interaction One InteractionInterest
Many
InteractionInteractionProducts
Interaction One InteractionProduct Many
Entity Type "Interaction"
Entity type Interaction contains all attributes needed to create interactions with their interests and related products.
Interaction Meta Information
Table 21:
Property Description Edm Core Type Max Length Mandatory Key
Key Identifier (GUID) of interaction in this import. Defaulted internally!
Edm.String 32 X
CampaignId CRM Campaign ID Edm.String 24
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 49
Property Description Edm Core Type Max Length Mandatory Key
CommunicationMedium
Communication Medium Edm.String 20 X
ContactId External ID of Interaction Contact Data
Edm.String 255
ContactIdOrigin Origin of Interaction Contact Data
Edm.String 20 X
ContentData Interaction Content Data Edm.String
ContentTitle Interaction Content Title Edm.String 255
Device Device Edm.String 80
DigitalAccountId Digital Account ID Edm.String 40
DigitalAccountType
Digital Account Type Edm.String 10
InitiativeId Campaign ID Edm.String 10
InitiativeVersion Edition (Version) Edm.Int32 10
InteractionType Interaction Type Edm.String 20 X
IsAnonymous Indicates whether interaction is anonymous
Edm.Boolean n/a
Latitude Latitude of a geographical location
Edm.Decimal n/a
Longitude Longitude of a geographical location
Edm.Decimal n/a
SpatialReferenceIdentifier
Spatial Reference Identifier (optional)
Edm.String 10
MarketingLocationOrigin
Origin of Marketing Location Edm.String 30
MarketingLocationId
Location ID Edm.String 50
MarketingOrchestrationId
Campaign Content Identifier Edm.Int32 10
MarketingPermissionCommunicationMedium
Communication medium for which permission has been given
Edm.String 20
50 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Description Edm Core Type Max Length Mandatory Key
MarketingPermissionDirection
Direction of the communication medium for which permission has been given
Edm.String 1
Quantifier Interaction Quantifier Edm.Int16 5
Reason Reason for a certain interaction
Example: Interaction Type EMAIL_BOUNCE_SOFT; nteraction Reason: MAILBOX_FULL
Edm.String 40
SourceDataUrl URL of Source Data Edm.String
SourceObjectId Interaction source object ID Edm.String 50
SourceObjectType Interaction Source Object type Edm.String 30
SourceObjectAdditionalId
The external object ID of the source object
Edm.String 50
SourceSystemId Interaction Source System ID Edm.String 255
SourceSystemType Interaction Source System Type
Edm.String 20
StartingPointUrl URL of Starting Point Edm.String
StartingPointText Text displayed at starting point Edm.String 255
Timestamp UTC Timestamp
Format: number of milliseconds since midnight Jan 1, 1970. For example: "/Date(1406014140922)/"
Edm.DateTime 21 X
Valuation Interaction Valuation Edm.Int16 3
Amount Amount Edm.Decimal 31
Currency Currency Code Edm.String 3
Entity Type "InteractionInterest"
If additionally items of interest for the interactions are needed entity type InteractionInterest has to be used.
InteractionInterest Meta Information
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 51
Table 22:
Property Description Edm Core Type Max Length Mandatory Key
Key Identifier (GUID) of interaction interest in this import
Defaulted internally!
Edm.String 32 X
Interest Item of interest Edm.String 40 X
Quantifier Weighting Factor Edm.Int16
Interests must exist in the system either as values deliveredby SAP or configured by the customer in Business Administration Manage Interests . .
Entity Type "InteractionProduct"
If additionally product references for interactions are needed entity type InteractionProduct has to be used.
InteractionProduct Meta Information
Table 23:
Property Description Edm Core Type Max Length Mandatory Key
Key Identifier (GUID) of interaction product in this import
Defaulted internally!
Edm.String 32 X
ItemId Item id Edm.String 50 X
ItemType Item type Edm.String 30 X
RecommendationModelTypeID
Product recommendation model type id
Edm.String 30
SourceSystemId Interaction source system id Edm.String 255
Amount Product related amount (related currency is on root only)
Edm.Decimal 31
Description Product description Edm.String 120
ImageUrl URL of a product image Edm.String 1333
Name Product name Edm.String 40
52 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Description Edm Core Type Max Length Mandatory Key
NavigationURL URL to the product details page
Edm.String 1333
Quantifier Weighting factor Edm.Int16
Quantity Product related quantity Edm.Decimal 22
UnitOfMeasure Unit of measure of product quantity
Edm.String 3
Valuation Sentiment or opinion of interaction contacts
Edm.Int16
Entity Type "InteractionProductCategory"
If additionally product category references for interactions are needed entity type InteractionProductCategory has to be used.
InteractionProductCategoryMeta Information
Table 24:
Property Description Edm Core Type Max Length Mandatory Key
HierarchyId External Identifier of a product category hierarchy
Edm.String 50 X X
CategoryId External Identifier of a product category
Edm.String 50 X
Quantifier Weighting factor Edm.Int16
Valuation Sentiment or opinion of interaction contacts
Edm.Int16
Entity Type "InteractionAdditionalObjectReference
If additional object references for interactions are needed, the entity type InteractionAdditionalObjectReference has to be used.
Meta Information for InteractionAdditionalObjectReference
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 53
Table 25:
Property Description Edm Core Type Max Length Mandatory Key
ObjectType Type of the object referenced
Edm.String 30 X X
ObjectId ID of the object referenced
Edm.String 50 X X
Entity Type "InteractionDigitalAsset"
If additional digital asset references for interactions are needed, the entity typeInteractionDigitalAsset has to be used.
Meta Information for InteractionDigitalAsset
Table 26:
Property Description Edm Core Type Max Length Mandatory Key
SourceSystemId Source system of the digital asset ID of the digital asset
Edm.String 255 X X
Id Source system of the digital asset ID of the digital asset
Edm.String 50 X X
Name Name of the digital asset
Edm.String 120
MIMEType MIME type of the digital asset, for example text, image, audio or video
Edm.String 256
URL URL where the digital asset is located
Edm.String 1.333
CampaignID Campaign ID Edm.String 10
Entity Type "InteractionOffer"
InteractionOffer Meta Information
54 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Table 27:
Property Description Edm Core Type Max Length Mandatory Key
Origin Origin of the offer Edm.String 30 X X
Id Identifier of the offer Edm.String 10 X X
ContentItemId ID of the content item of the offer
Edm.String 5
RecommendationScenarioId
ID of the recommendation scenario
Edm.String 50
Entity Type "InteractionTag"
If additionally tag references for interactions are needed, the entity type InteractionTag has to be used.
Meta Information for InteractionTag
Table 28:
Property Description Edm Core Type Max Length Mandatory Key
TagType Type of the tag Edm.String 75 X X
Tag ID of the tag Edm.String 200 X X
Associations for Interactions
With one OData request you can create several interactions with several additional items of interest and/or products, additional object references, digital assets, offers, or tags.
The relations are as follows:
Table 29:
Associations Principal Entity Cardinality of Principal Entity
Dependent Entity Cardinality of Dependent Entity
HeaderInteraction ImportHeader One Interaction Many
InteractionInteractionInterests
Interaction One InteractionInterest
Many
InteractionInteractionAdditionalObjRef
Interaction One InteractionAdditionalObjectReference
Many
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 55
Associations Principal Entity Cardinality of Principal Entity
Dependent Entity Cardinality of Dependent Entity
InteractionInteractionDigitalAsset
Interaction One InteractionDigitalAsset
Many
InteractionInteractionOffer
Interaction One InteractionOffer Many
InteractionInteractionTags
Interaction One InteractionTag Many
InteractionInteractionProducts
Interaction One InteractionProduct Many
InteractionInteractionProductCategories
Interaction One InteractionProductCategory
Many
Entity Type "Interest"
Meta Information for Interest
Table 30:
Property Description Edm Core Type Max Length Mandatory Key
Description Description of the interest Edm.String 120 X -
Language Language code Edm.String 2 X X
Id ID of the interest Edm.String 40 X X
Associations for Interests
You can create several interests with several additional items of product categories with one OData request. The relations are as follows:
Table 31:
Association Principal Entity Cardinality of Principal Entity
Dependent Entity Cardinality of Dependent Entity
InterestProductCategories
Interest one ProductCategory many
56 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Entity Type "ProductCategory"
Entity type ProductCategory contains all attributes needed to create product categories.
ProductCategory Meta Information
Table 32:
Property Description Edm Core Type Max Length Mandatory Key
Id ID of product category Edm.String 50 X
HierarchyId ID of product hierarchy Edm.String 50 X
ParentCategoryId ID of parent category Edm.String 50
Name Product category name Edm.String 40
Description Description of product category
Edm.String 512
Entity Type "Product"
Entity type Product contains all attributes needed to create product categories.
Product Meta Information
Table 33:
Property Description Edm Core Type Max Length Mandatory Key
Id ID of product Edm.String 50 X
ProductIdOrigin Origin of source of ID Edm.String 30 X X
Name Product Name Edm.String 120
Description Product Description Edm.String 512
ImageUrl URL of product image Edm.String 1.333
NavigationURL URL of navigation target Edm.String 1.333
CategoryId ID of product category Edm.String 50
HierachyId ID of product hierarchy Edm.String 50
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 57
Associations for Products and Product Categories
You have the option to create several products with several additional product categories with one OData request.
The relations are as follows:
Table 34:
Associations Principal Entity Cardinality of Principal Entity
Dependent Entity Cardinality of Dependent Entity
HeaderProduct ImportHeader One Product Many
ProductProductCategories
Product One ProductCategory Many
HeaderProductCategory
ImportHeader One ProductCategory Many
9.2 Import of Interaction Contact Data Using OData Services
Creating Interaction Contacts
Contacts can be created and updated using the Interaction Contact Integration scenario. This scenario contains:
● Request URI: /sap/opu/odata/sap/CUAN_IMPORT_SRV/ImportHeaders● HTTP Method: Post
We recommend that you do not use batch processing ($batch) because error handling is more complex with batch processing. A batch request can return an OK code and still have errors that have to be checked in the response body. It is still possible to send multiple entities in one POST request without using batch processing.
The code snippet shows an example in JSON format of how to do this for interactions contacts. The same procedure applies to all other entities you import with this service.
ExampleCreating Two Contacts with Several Facets
The first person, Otto Normalverbraucher, is a contact for a company (account). The second person, Erika Mustermann, is a consumer who acts directly as an account. You have to replace "UserName" : "<YOUR COMMUNICATION USER>", with a valid communication user.
Sample Code
{ "Id" : "", "Timestamp" : "/Date(1406014140922)/", "UserName" : "<YOUR COMMUNICATION USER>", "SourceSystemType" : "EXT",
58 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
"SourceSystemId" : "HYBRIS", "Contacts" : [ { "IdOrigin" : "SAP_HYBRIS_CONSUMER", "Id" : "4711", "Timestamp" : "/Date(1406014140601)/", "City" : "Kiel", "CountryDescription" : "Germany", "CustomerName" : "Stahlbau GmbH", "DepartmentDescription" : "Sales", "EMailAddress" : "[email protected]", "EMailAddress2" : "[email protected]", "EMailAddress3" : "[email protected]", "FacebookId" : "4711", "FirstName" : "Otto", "FullName" : "Otto Normalverbraucher", "FunctionDescription" : "Director", "GenderDescription" : "Male", "GooglePlusId" : "", "HouseNumber" : "1", "IndustryDescription" : "Manufacturing", "IsConsumer" : false, "IsContact" : true, "LanguageDescription" : "German", "LastName" : "Normalverbraucher", "MaritalStatusDescription" : "Married", "MobilePhoneNumber" : "+49119201412191", "Obsolete" : false, "PhoneNumber" : "+49115", "PostalCode" : "24105", "RegionDescription" : "Schleswig-Holstein", "SAPCRMBusinessPartnerId" : "", "SAPCRMMarketingProspectId" : "", "SAPERPAccountId" : "12345", "SAPERPConsumerAccountId" : "", "SAPERPContactId" : "23456", "SAPHybrisConsumerAccountId" : "4711", "Street" : "Hauptstrasse", "TitleDescription" : "Mr.", "TwitterId" : "", "Facets" : [ { "IdOrigin" : "EMAIL", "Id" : "[email protected]", "Timestamp" : "/Date(1406014140601)/", }, { "IdOrigin" : "EMAIL", "Id" : "[email protected]", "Timestamp" : "/Date(1406014140601)/", } ], "MarketingPermissions" : [ { "IdOrigin" : "EMAIL", "Id" : "[email protected]", "Timestamp" : "/Date(1406014140601)/", "OptIn" : "Y", "OutboundCommunicationMedium" : "EMAIL" } ], "MarketingAttributes" : [ { "CategoryDescription" : "Hobby", "Value" : "Soccer" }, { "CategoryDescription" : "Hobby",
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 59
"Value" : "Volleyball" }, { "CategoryDescription" : "Spoken Language", "Value" : "English" }, { "CategoryDescription" : "Spoken Language", "Value" : "Romanian" } ] }, { "IdOrigin" : "SAP_HYBRIS_CONSUMER", "Id" : "4712", "Timestamp" : "/Date(1406014140601)/", "City" : "Walldorf", "CountryDescription" : "Germany", "CustomerName" : "", "DepartmentDescription" : "", "EMailAddress" : "[email protected]", "EMailAddress2" : "[email protected]", "EMailAddress3" : "[email protected]", "FacebookId" : "4712", "FirstName" : "Erika", "FullName" : "Erika Mustermann", "FunctionDescription" : "", "GenderDescription" : "Female", "GooglePlusId" : "4712", "HouseNumber" : "1", "IndustryDescription" : "", "IsConsumer" : true, "IsContact" : false, "LanguageDescription" : "German", "LastName" : "Mustermann", "MaritalStatusDescription" : "Single", "MobilePhoneNumber" : "+49119201412192", "Obsolete" : false, "PhoneNumber" : "+49116", "PostalCode" : "69190", "RegionDescription" : "Baden-Wurttemberg", "SAPCRMBusinessPartnerId" : "", "SAPCRMMarketingProspectId" : "", "SAPERPAccountId" : "", "SAPERPConsumerAccountId" : "CAID-4712", "SAPERPContactId" : "", "SAPHybrisConsumerAccountId" : "4712", "Street" : "Nebenstrasse", "TitleDescription" : "Ms.", "TwitterId" : "4712", "Facets" : [ { "IdOrigin" : "EMAIL", "Id" : "[email protected]", "Timestamp" : "/Date(1406014140601)/", }, { "IdOrigin" : "EMAIL", "Id" : "[email protected]", "Timestamp" : "/Date(1406014140601)/", } ] } ]}
60 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Input for OData Service
NoteNote that the syntax of additional fields, and all fields, in OData is Upper Camel Case and contains no underscores. For example, a field text TEXT40_1 is converted to Text401 or UNIT_OF_MEASURE1 is converted to UnitOfMeasure1 in OData.
Where possible, the free text values provided are mapped to the respective key values. If the mapping does not work, the data is stored in the free text field:
● In Profile Dashboard, free text values are marked with an asterisk (*) at the end.● In Segmentation, no free text values are available.
Free text values cannot be translated.
Upload
The upload of interaction contacts is always started through the Import Headers entity and a deep insert on the Contacts entity. The Import Header entity requires the following entries:
Table 35:
Property Mandatory
Description
Id X Identifier for import
For each service request, a new ID has to be provided. If an empty value is provided, the system creates a default ID.
Timestamp X Time of upload
UserName User who uploads data
If no user name is provided the default (back end user) is used.
SourceSystemType X Type of source system
SourceSystemId X Identifier of the source system; the value is later used as prefix to create unique external contact IDs
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 61
The Contact entity contains the following input properties:
Table 36:
Property Mandatory
Description
Id X Contact identifier in source system
IdOrigin X Identifies the data source, for example:
● COOKIE_ID -> Cookie ID
● EMAIL -> Email
● FAX -> Fax
● MOBILE -> Mobile
● PHONE -> Phone
● SAP_C4C_CONTACT -> SAP C4C - Contact
● SAP_C4C_INDIV_CUST -> SAP C4C - Individual Customer
● SAP_C4C_MKT_LEAD -> SAP Hybris Cloud for Customer - Marketing Lead
● SAP_CRM_BUPA -> SAP CRM Business Partner
● SAP_CRM_DOCUMENT -> CRM Document
● SAP_CRM_MKT_PROSPECT -> SAP CRM Marketing Prospect
● SAP_CRM_MKT_PRO_GUID -> SAP CRM - Marketing Prospect Guid
● SAP_ERP_BUPA -> SAP ERP Business Partner
● SAP_ERP_COMPANY -> ERP Corporate Account
● SAP_ERP_CONTACT -> SAP ERP Contact
● SAP_ERP_CUSTOMER -> SAP ERP - Customer/Consumer
● SAP_FILE_IMPORT -> SAP File Import Contact
● SAP_HYBRIS_CONSUMER -> Hybris Commerce Consumer
● SAP_LOY_PROGRAM -> Loyalty Program
● SAP_MANUAL -> SAP Manually Created Contact
● SAP_ODATA_IMPORT -> SAP Odata Import Contact
Timestamp X Timestamp of upload in format yyyyMMddhhmmss
City City name
CountryDescription Free text value for country
CustomerName Company name
62 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Mandatory
Description
DepartmentDescription Free text value for department
EmailAddress Email address
EMailOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to send an email to a specified email address:
● Space: Not allowed● X: Allowed
EmailAddress2 Email address 2
EMail2OptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to send an email to the specified email address 2:
● Space: Not allowed● X: Allowed
EmailAddress3 Email address 3
EMail3OptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to send an email to the specified email address 3:
● Space: Not allowed● X: Allowed
FacebookId Facebook account ID
FacebookOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact via facebook:
● Space: Not allowed● X: Allowed
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 63
Property Mandatory
Description
FaxNumber Fax number
FaxOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact via fax:
● Space: Not allowed● X: Allowed
FirstName First name of contact
FullName If the contact´s name is not available as first and last name, this field can be used for the full name.
FunctionDescription Free text value for function
GenderDescription Free text value for gender
GooglePlusId Google plus account ID
GooglePlusOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact via Google plus:
● Space: Not allowed● X: Allowed
HouseNumber House number
IndustryDescription Free text value for industry
IsConsumer Person generating sales revenue; possible entries:
● Space: Not a consumer● X: Is consumer
IsContact Person your company interacts with in a B2B process; possible entries:
● Space: Not a contact● X: Is contact
LanguageDescription Free text value for language
64 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Mandatory
Description
LastName Last name of contact
Latitude Latitude value of address; example: 55,64813464
Longitude Longitude value of Address Example: -3,24568414
MaritalStatusDescription Free text value for marital status
MobilePhoneNumber Mobile phone number
MobilePhoneOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact via SMS on the mobile phone:
● Space: Not allowed● X: Allowed
MobileSMSOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact via mobile phone:
● Space: Not allowed● X: Allowed
Obsolete Do not use.
NoteObsolete can be set to true (X) if for example contacts are deleted in the original system which sends them via OData.
PhoneNumber Landline phone number
PhoneOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact on his landline:
● Space: Not allowed● X: Allowed
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 65
Property Mandatory
Description
PostalCode Postal code
RegionDescription Free text value for region
SAPCRMBusinessPartnerId For uploads from CRM system: Business partner number of the contact in the CRM system (Partner field in table BUT000)
SAPCRMMarketingProspectId For uploads from CRM system: Marketing prospect number of contact in CRM system
SAPERPAccountId Customer number of the contact´s company (B2B)
SAPERPConsumerAccountId Consumer´s customer number (B2C)
SAPERPContactId For uploads from ERP system: Contact number of contact in ERP system (PARNR field in table KNVK)
SAPHybrisConsumerAccountId For uploads from SAP hybris commerce: Contact number
Street Street
TitleDescription Free text value for title
Free text values are marked with an Asterisk * at the end in Contact Engagement.
NoteFree text values cannot be translated.
TwitterId Twitter account ID
TwitterOptIn Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Specifies whether company is allowed to address contact on Twitter:
● Space: Not allowed● X: Allowed
If you use the Import Data or Custom Fields and Logic apps, the extension fields are added as properties to the contact entity. To see the available properties, open the metadata document with the following URL: https://<customer_host>/sap/opu/odata/sap/cuan_import_srv/$metadata.
If account team members are needed, you must use the entity set AccountTeamMembers based on the entity type AccountTeamMember.
66 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
The entity type AccountTeamMember contains all attributes that are required to assign team member to interaction contacts (company or person). Interaction contacts are identified with the information filled into the attributes InteractionContactId and InteractionContactIdOrigin. The UserId is the identifier of a user in the system that shall be assigned as team member to the interaction contact. The role is the business role in that the team member acts for this interaction contact.
Table 37: ContactAccountTeamMember Meta Information
Property Mandatory Description
InteractionContactId X Identifier of an interaction contact facet
Origin X Origin of Interaction
UserId X Contact ID
Role X User ID of team member
If marketing attributes are needed, you must use the entity set ContactMarketingAttributes based on the entity type ContactMarketingAttribute. For every marketing attribute, one instance of the ContactMarketingAttribute entity type must be provided.
Table 38: ContactMarketingAttribute Meta Information
Property Mandatory Description
CategoryId External identifier for marketing category
CategoryDescription Description of marketing category
LanguageDescription Language in which category description is provided
Value X Value of marketing attribute
Either CategoryId or CategoryDescription can be used to identify a marketing category. Category descriptions are language-dependent. Language Description can be used to set the language of a Category Description. The language of the LanguageDescription must exist in the system. If it does not exist, the logon language is used. The value is language-independent.
You can add marketing permissions for a contact by using the deep insert entity ContactMarketingPermissions under the entity Contacts. The following table shows the available properties:
Table 39: ContactMarketingPermissions Meta Information
Property Mandatory Description
Id X Contact identifier in source system
IdOrigin X Identifier of source system
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 67
Property Mandatory Description
OutboundCommunicationMedium X Communication medium for the marketing permission (for example EMAIL or SMS)
Timestamp Timestamp for marketing permission
OptIn Opt-in; values: Y = yes; N = No, space = not known
CommunicationDirection X Outbound = O, Inbound = I
Checks During Upload
During the upload, the SAP Hybris Marketing Cloud checks, if the ID of the contact is not provided by the external source system. If it is not provided, the system generates the ID in the back end system. In this case an update of a contact is not possible.
OData Service Output
If the upload was successful, the OData service responses with HTTP status 201 Created.
If the call fails, the HTTP status is 400 Bad Request with an error message.
Updating Interaction Contacts
The update of interaction contacts is performed using the same OData service as for the creation process. You must provide the properties SourceSystemId and ContactId so that the system can identify the interaction contacts to be updated. The system always updates a complete interaction contact; partial update of a contact is not supported. This means that it is not possible to update only two attributes of a contact, for example, as the empty attributes of the update would overwrite the existing attribute entries. If a facet is not provided anymore in the update case, the system sets this facet to obsolete in the target system.
● Request URI: /sap/opu/odata/sap/CUAN_IMPORT_SRV/ImportHeaders● HTTP Method: Post● Example XML: Similar to create case (see above)
Error Handling
Due to the fact that the attribute SourceSystemId is the only mandatory attribute, the system does not provide you with many error messages that result from the business logic.
You can retrieve the log files that OData gateway stores using transaction /IWFND/ERROR_LOG. The log file provides you with a detailed description of the structural errors. In case of runtime errors, you can use transaction ST22 for deeper analyses.
68 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Known root causes:
● The OData service is not active● The same identifier in the ImportHeader is used for more than one run
9.3 Import of Interaction Data Using OData Services
Interactions identify communication and information exchange of any sort between a user´s company and a contact, such as emails to a company, phone calls to a contact, and posts written in social networks about a company or the company´s products.
The following fields are mandatory for interaction data:
Table 40:
Attribute Description
ID_ORIGIN Qualifier for source system
ID ID of contact of interaction in source system
IA_TYPE Interaction type
COMM_MEDIUM Communication medium/place
TIMESTAMP UTC time stamp in long form (YYYYMMDDhhmmsmmmuuun)
Semantic Key
The semantic key for interactions determines the uniqueness of an interaction record. The semantic key is defined by the following 7 fields, 5 mandatory and 2 optional:
● These 5 fields are mandatory and are checked during import:○ ID_ORIGIN: Origin of the interaction contact data (except in the case of ANONYMOUS interactions, as
described under point 2b below.)○ ID: External ID of the interaction contact data (except in the case of ANONYMOUS interactions, as
described under point 2b below.)○ IA_TYPE: Interaction type○ COMM_MEDIUM: Communication medium○ TIMESTAMP: UTC time stamp in long form (YYYYMMDDhhmmss.mmmuuun)
● These 2 semantic key fields are optional and are not checked during import:○ SOURCE_OBJECT_TYPE: Object type of the source object, for example, an opportunity in SAP Hybris
Cloud for Customer.○ SOURCE_OBJECT_ID: Object ID of the source object, for example, the GUID of the SAP Hybris Cloud for
Customer opportunity or the original post ID of the respective social media network (such as TW or FB).
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 69
NoteOne exception to this is in the case of a social posting. For a social posting, a SOURCE_OBJECT_ID is required. In this case the system checks to see whether the SOURCE_OBJECT_ID field is filled and returns an error if the field is empty. The check behavior is described in the table.
Table 41:
If
IA_TYPE is
SOURCE_OBJECT_ID should be filled with
Remarks
SOCIAL_POSTING Original Post ID of the respective social media network
This is checked during upload.
SHOP_ITEM_VIEW WEB_SESSION_ID For recommendations only. Not checked during upload.
WEBSITE_SEARCH WEB_SESSION_ID For recommendations only. Not checked during upload.
CLICK_THROUGH WEB_SESSION_ID For recommendations only. Not checked during upload.
SALES_ORDER SALES_ORDER_ID For recommendations only. Not checked during upload.
Delivered Values
The following tables give an overview of the delivered values for the defined origin of the contact ID, for the interaction type, for the communication medium, for the channels and the channel assignment.
ID_ORIGIN - Defined Origins of Contact ID: The origin of an ID indicates the source of the ID.
Table 42:
Origin of Contact Origin of Contact Description Anonymous
ANONYMOUS Anonymous Contact X
COOKIE_ID Cookie ID
EMAIL Email
FAX Fax
IP_ADDRESS IP Address X
MOBILE Mobile
70 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Origin of Contact Origin of Contact Description Anonymous
PHONE Phone
SAP_C4C_CONTACT SAP C4C - Contact
SAP_C4C_INDIV_CUST SAP C4C - Individual Customer
SAP_C4C_MKT_LEAD SAP C4C - Marketing Lead
SAP_CRM_BUPA SAP CRM - Business Partner
SAP_CRM_MKT_PROSPECT SAP CRM - Marketing Prospect ID
SAP_CRM_MKT_PRO_GUID SAP CRM - Marketing Prospect Guid
SAP_ERP_BUPA SAP ERP Business Partner
SAP_ERP_COMPANY SAP ERP - Company
SAP_ERP_CONTACT SAP ERP Contact
SAP_ERP_CUSTOMER SAP ERP - Customer/Consumer
SAP_FILE_IMPORT SAP File Import Contact
SAP_HYBRIS_CONSUMER SAP Hybris Commerce - Consumer
SAP_HYBRIS_MKT_IC SAP Hybris Marketing Interaction Contact
SAP_LOY_PROGRAM Loyalty Program
SAP_MANUAL SAP Manually Created Contact
SAP_ODATA_IMPORT SAP Odata Import Contact
WEB_SESSION_ID Web Browser Session-ID
IA_TYPE - Interaction Types: Types of interaction a contact can have with your company
Table 43:
Interaction Type Interaction Type Description Direction
C4C_OPPORTUNITY C4C Opportunity Unknown
C4C_SALES_LEAD C4C Sales Lead Unknown
CEI_INITIATIVE Campaign Outbound
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 71
Interaction Type Interaction Type Description Direction
CLICK_THROUGH Click through Unknown
CRM_ACTIVITY CRM activity Unknown
CRM_LEAD CRM lead Unknown
CRM_OPPORTUNITY CRM opportunity Unknown
CRM_SLS_ORDER CRM sales order Unknown
EMAIL_BLOCKED Email blocked Inbound
EMAIL_BOUNCE_HARD Hard email bounceback Inbound
EMAIL_BOUNCE_SOFT Soft email bounceback Inbound
EMAIL_COMPLAINT Email classified as complaint (spam) Inbound
EMAIL_FAILED Email failed Inbound
EMAIL_INBOUND Inbound email Inbound
EMAIL_OPENED Email opened Inbound
EMAIL_OUTBOUND Outbound email Outbound
LOY_POINT_ACCRUAL Loyalty points accrued Inbound
LOY_POINT_REDEMPTION Loyalty points redeemed Inbound
LOY_REGISTRATION Loyalty program registration Inbound
MARKETING_LEAD SAP Hybris Cloud for Customer lead Unknown
MKT_PERM_OPTIN Opt-in for marketing permissions Inbound
MKT_PERM_OPTIN_PRE Pre opt-in for marketing permissions Inbound
MKT_PERM_OPTOUT Opt-out for marketing permissions Inbound
MKT_PERM_OPTOUT_PRE Pre opt-out for marketing permissions Inbound
NEWSLETTER_SUBSCR Subscribe to Newsletter Inbound
NEWSLETTER_UNSUBSCR Unsubscribe from Newsletter Inbound
NEWSL_SUBSCR_PRE Pre-subscribe to Newsletter Inbound
NEWSL_UNSUBSCR_PRE Pre-unsubscribe from Newsletter Inbound
72 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Interaction Type Interaction Type Description Direction
OFFER_CLICK Offer Clicked Inbound
OFFER_DISPLAY Offer Displayed Outbound
OUTBOUND_CHCK_FAILED Outbound check failed Outbound
OUTBOUND_FAILED Outbound failed Outbound
SALES_ORDER Sales order Unknown
SHOP_CART_ABANDONED Shopping cart abandoned Inbound
SHOP_CART_VIEW View shopping cart Inbound
SHOP_CHECKOUT_START Proceeded to checkout Inbound
SHOP_CHECKOUT_SUCCES Checkout successful Inbound
SHOP_ITEM_ADD Product added to shopping cart Inbound
SHOP_ITEM_REMOVE Product removed from shopping cart Inbound
SHOP_ITEM_VIEW Product viewed Inbound
SMS_BOUNCE_HARD Hard bounce Inbound
SMS_BOUNCE_SOFT Soft bounce Inbound
SMS_DELIVERED Outbound SMS delivered Outbound
SMS_FAILED SMS delivery error Inbound
SMS_OUTBOUND Outbound SMS Outbound
SOCIAL_POSTING Posting in social media Unknown
SURVEY_RESPONSE Survey response Unknown
TELEPHONE_INBOUND Incoming telephone call Inbound
TELEPHONE_OUTBOUND Outgoing telephone call Outbound
TELEPHONE_UNSUCESSFL Outgoing telephone call failed Outbound
WEBINAR Webinar Unknown
WEBSITE_DOWNLOAD Website download Unknown
WEBSITE_REGISTRATION Website registration Unknown
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 73
Interaction Type Interaction Type Description Direction
WEBSITE_SEARCH Website search Inbound
WEBSITE_VIDEO Website video Unknown
WEBSITE_VISIT Website visit Unknown
REASON - Reason: Reasons for a specific Interaction. This depends on the Interaction Type.
Table 44:
Interaction Type Reason Reason Description
EMAIL_BOUNCE_HARD NO_EMAIL Target email address does not exist
EMAIL_BOUNCE_HARD SUPPRESSED Email was invalid before
EMAIL_BOUNCE_SOFT ATTACHEMENT_REJECTED Rejected due to suspicious attachment
EMAIL_BOUNCE_SOFT CONTENT_REJECTED Rejected due to suspicious content
EMAIL_BOUNCE_SOFT MAILBOX_FULL Mailbox is full
EMAIL_BOUNCE_SOFT MESSAGE_TOO_LARGE Message is too large for the inbox
EMAIL_COMPLAINT ABUSE Unsolicited email
EMAIL_COMPLAINT AUTH_FAILURE Email authentication failed
EMAIL_COMPLAINT FRAUD Potentially fraud
EMAIL_COMPLAINT NOT_SPAM Mail was classified as spam before
EMAIL_COMPLAINT VIRUS Mail might contain a virus
LOY_POINT_ACCRUAL ACCRUAL Accrual
LOY_POINT_ACCRUAL AWARD Award
LOY_POINT_ACCRUAL ORDER Sales Order
LOY_POINT_ACCRUAL RATING Product Rating
LOY_POINT_ACCRUAL REFERRAL Referral
LOY_POINT_ACCRUAL REGISTRATION Registration
LOY_POINT_ACCRUAL REVIEW Product Review
LOY_POINT_REDEMPTION DEDUCT Deduct
74 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Interaction Type Reason Reason Description
LOY_POINT_REDEMPTION EXPIRATION Expiration
LOY_POINT_REDEMPTION REDEEM Redeem
OUTBOUND_CHCK_FAILED LIMIT_REACHED Communication limit reached
OUTBOUND_CHCK_FAILED PERMISSION_MISSING No permission for communication medium / address
OUTBOUND_FAILED EMAIL_INVALID Email address not valid
OUTBOUND_FAILED EMAIL_MISSING Email address missing
OUTBOUND_FAILED NAME_MISSING Name missing
OUTBOUND_FAILED PHONE_MISSING Phone number missing
OUTBOUND_FAILED WRONG_IC_TYPE_01 Interaction contact is a person and not a corporate account
OUTBOUND_FAILED WRONG_IC_TYPE_02 Interaction contact is a corporate account and not a person
SMS_BOUNCE_HARD BLACKLISTED MSISDN or destination operator blacklisted
SMS_BOUNCE_HARD LIMIT_REACHED Account limit is reached
SMS_BOUNCE_HARD NO_OPERATOR_FOUND No operator found for current MSISDN
SMS_BOUNCE_HARD NO_PERMISSION Subscriber profile does not allow service
SMS_BOUNCE_HARD PORTED Unknown or ported number
SMS_BOUNCE_HARD SMS_BLOCKED Call barred by operator
SMS_BOUNCE_HARD SMS_REJECTED Failed message delivery
SMS_BOUNCE_SOFT DELIVERY_FAILED Failed message delivery
SMS_BOUNCE_SOFT EXPIRED Validity period expired
SMS_BOUNCE_SOFT OUT_OF_CREDIT Subscriber is temporarily out of credit
TELEPHONE_OUTBOUND HANGUP Recipient hung up
TELEPHONE_OUTBOUND REFUSAL Right person reached; campaign goal not achieved
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 75
Interaction Type Reason Reason Description
TELEPHONE_OUTBOUND SUCCESS Right person reached; campaign goal achieved
TELEPHONE_UNSUCESSFL CALL_CANCELLED Call cancelled
TELEPHONE_UNSUCESSFL INVALID_NUMBER Invalid number
TELEPHONE_UNSUCESSFL MAX_CALLS Maximum number of calls made; no result
TELEPHONE_UNSUCESSFL TECH_ERROR Call failed due to technical error
TELEPHONE_UNSUCESSFL WRONG_PERSON Call answered by wrong person
COMM_MEDIUM - Communication Media: Types of communication media a contact uses to interact with your company
Table 45:
Communication Medium Communication Medium Description
BUSINESS_DOCUMENT Business document
EMAIL Email
FAX Fax
FB Facebook
GP Google+
ONLINE_SHOP Online shop
PAPER Paper
PHONE Phone
RSS RSS feed
SMS Text message
SOCIAL Social media
SYSTEM System
TW Twitter
WEB Web
Channels: Interaction type and communication medium are assigned to a channel on the fact sheet
76 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Table 46:
Channel Channel Description
BUS2000108 Lead
BUS2000111 Opportunity
BUS2000115 Sales Order
BUS2000126 Activity
CEI_INITIATIVE Campaign
COMMERCE Commerce
EMAIL Email
EVENT Event
PHONE Phone
SOCIAL Social media
WEB Web
Channel Assignment: Interaction type and communication medium have to be selected from one of the following channel assignments
Table 47:
Interaction Type Interaction Type Description
Communication Medium
Communication Medium Description
Interaction Channel
Channel Description
C4C_OPPORTUNITY
C4C Opportunity BUSINESS_DOCUMENT
Business Document
BUS2000111 Opportunity
C4C_SALES_LEAD
C4C Sales Lead BUSINESS_DOCUMENT
Business Document
BUS2000108 Lead
CEI_INITIATIVE
Campaign BUSINESS_DOCUMENT
Business Document
CEI_INITIATIVE
Campaign
CLICK_THROUGH Click Through EMAIL Email EMAIL Email
CLICK_THROUGH Click Through WEB Web WEB Web
CRM_ACTIVITY CRM Activity BUSINESS_DOCUMENT
Business Document
BUS2000126 Activity
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 77
Interaction Type Interaction Type Description
Communication Medium
Communication Medium Description
Interaction Channel
Channel Description
CRM_LEAD CRM Lead BUSINESS_DOCUMENT
Business Document
BUS2000108 Lead
CRM_OPPORTUNITY
CRM Opportunity BUSINESS_DOCUMENT
Business Document
BUS2000111 Opportunity
CRM_SLS_ORDER CRM Sales Order BUSINESS_DOCUMENT
Business Document
BUS2000115 Sales Order
EMAIL_BLOCKED Email Blocked EMAIL Email EMAIL Email
EMAIL_BOUNCE_HARD
Hard Email Bounceback
EMAIL Email EMAIL Email
EMAIL_BOUNCE_SOFT
Soft Email Bounceback
EMAIL Email EMAIL Email
EMAIL_COMPLAINT
Emails Classified as Complaint (Spam)
EMAIL Email EMAIL Email
EMAIL_FAILED Email Failed EMAIL Email EMAIL Email
EMAIL_INBOUND Inbound Email EMAIL Email EMAIL Email
EMAIL_OPENED Email Opened EMAIL Email EMAIL Email
EMAIL_OUTBOUND
Outbound Email EMAIL Email EMAIL Email
MARKETING_LEAD
C4C Lead BUSINESS_DOCUMENT
Business Document
BUS2000108 Lead
MKT_PERM_OPTIN
Opt-In for Marketing Permission
EMAIL Email EMAIL Email
MKT_PERM_OPTIN
Opt-In for Marketing Permission
SYSTEM System WEB Web
MKT_PERM_OPTIN
Opt-In for Marketing Permission
WEB Web WEB Web
MKT_PERM_OPTIN_PRE
Pre Opt-In for Marketing Permission
SYSTEM System WEB Web
78 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Interaction Type Interaction Type Description
Communication Medium
Communication Medium Description
Interaction Channel
Channel Description
MKT_PERM_OPTIN_PRE
Pre Opt-In for Marketing Permission
WEB Web WEB Web
MKT_PERM_OPTOUT
Opt-Out for Marketing Permission
EMAIL Email EMAIL Email
MKT_PERM_OPTOUT
Opt-Out for Marketing Permission
SYSTEM System WEB Web
MKT_PERM_OPTOUT
Opt-Out for Marketing Permission
WEB Web WEB Web
MKT_PERM_OPTOUT_PRE
Pre Opt-Out for Marketing Permission
SYSTEM System WEB Web
MKT_PERM_OPTOUT_PRE
Pre Opt-Out for Marketing Permission
WEB Web WEB Web
NEWSLETTER_SUBSCR
Subscribe to Newsletter
SYSTEM System WEB Web
NEWSLETTER_SUBSCR
Subscribe to Newsletter
WEB Web WEB Web
NEWSLETTER_UNSUBSCR
Unsubscribe from Newsletter
SYSTEM System EMAIL Email
NEWSLETTER_UNSUBSCR
Unsubscribe from Newsletter
WEB Web EMAIL Email
NEWSL_SUBSCR_PRE
Pre-subscribe to Newsletter
SYSTEM System WEB Web
NEWSL_SUBSCR_PRE
Pre-subscribe to Newsletter
WEB Web WEB Web
NEWSL_UNSUBSCR_PRE
Pre-unsubscribe from Newsletter
SYSTEM System WEB Web
NEWSL_UNSUBSCR_PRE
Pre-unsubscribe from Newsletter
WEB Web WEB Web
OFFER_CLICK Offer Clicked ONLINE_SHOP Online-Shop WEB Web
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 79
Interaction Type Interaction Type Description
Communication Medium
Communication Medium Description
Interaction Channel
Channel Description
OFFER_DISPLAY Offer Displayed ONLINE_SHOP Online-Shop WEB Web
OUTBOUND_CHCK_FAILED
Outbound Check Failed
EMAIL Email EMAIL Email
OUTBOUND_CHCK_FAILED
Outbound Check Failed
PHONE Phone PHONE Phone
OUTBOUND_CHCK_FAILED
Outbound Check Failed
SMS Text Message PHONE Phone
OUTBOUND_FAILED
Outbound Failed EMAIL Email EMAIL Email
OUTBOUND_FAILED
Outbound Failed PHONE Phone PHONE Phone
OUTBOUND_FAILED
Outbound Failed SMS Text Message PHONE Phone
SALES_ORDER Sales Order BUSINESS_DOCUMENT
Business Document
BUS2000115 Sales Order
SHOP_CART_ABANDONED
Shopping Cart Abandoned
ONLINE_SHOP Online-Shop COMMERCE Commerce
SHOP_CART_VIEW
View Shopping Cart
ONLINE_SHOP Online-Shop COMMERCE Commerce
SHOP_CHECKOUT_START
Proceeded to Checkout
ONLINE_SHOP Online-Shop COMMERCE Commerce
SHOP_CHECKOUT_SUCCES
Checkout Successful
ONLINE_SHOP Online-Shop COMMERCE Commerce
SHOP_ITEM_ADD Product Added to Shopping Cart
ONLINE_SHOP Online-Shop COMMERCE Commerce
SHOP_ITEM_REMOVE
Product Removed from Shopping Cart
ONLINE_SHOP Online-Shop COMMERCE Commerce
SHOP_ITEM_VIEW
Product Viewed ONLINE_SHOP Online-Shop COMMERCE Commerce
80 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Interaction Type Interaction Type Description
Communication Medium
Communication Medium Description
Interaction Channel
Channel Description
SMS_BOUNCE_HARD
Hard Bounce SMS Text Message PHONE Phone
SMS_BOUNCE_SOFT
Soft Bounce SMS Text Message PHONE Phone
SMS_DELIVERED Outbound Text Message Delivered
SMS Text Message PHONE Phone
SMS_FAILED Text Message Delivery Error
SMS Text Message PHONE Phone
SMS_OUTBOUND Outbound Text Message
PHONE Phone PHONE Phone
SMS_OUTBOUND Outbound Text Message
SMS Text Message PHONE Phone
SOCIAL_POSTING
Post in Social Media
FB Facebook SOCIAL Social Media
SOCIAL_POSTING
Post in Social Media
GP Google+ SOCIAL Social Media
SOCIAL_POSTING
Post in Social Media
RSS RSS Feed SOCIAL Social Media
SOCIAL_POSTING
Post in Social Media
SOCIAL Social Media SOCIAL Social Media
SOCIAL_POSTING
Post in Social Media
TW Twitter SOCIAL Social Media
SURVEY_RESPONSE
Survey Response WEB Web WEB Web
TELEPHONE_INBOUND
Incoming Telephone Call
PHONE Phone PHONE Phone
TELEPHONE_OUTBOUND
Outgoing Telephone Call
BUSINESS_DOCUMENT
Business Document
PHONE Phone
TELEPHONE_OUTBOUND
Outgoing Telephone Call
PHONE Phone PHONE Phone
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 81
Interaction Type Interaction Type Description
Communication Medium
Communication Medium Description
Interaction Channel
Channel Description
TELEPHONE_UNSUCESSFL
Outgoing Telephone Call Failed
PHONE Phone PHONE Phone
WEBINAR Webinar WEB Web EVENT Event
WEBSITE_DOWNLOAD
Website Download WEB Web WEB Web
WEBSITE_REGISTRATION
Website Registration
WEB Web WEB Web
WEBSITE_SEARCH
Website Search WEB Web WEB Web
WEBSITE_VIDEO Website Video WEB Web WEB Web
WEBSITE_VISIT Website Visit WEB Web WEB Web
Importing Interaction Data by Using OData Service
The interaction integration scenario contains an OData Service with the URL https://<customer_host>sap/opu/odata/sap/cuan_import_srv/. To upload interactions, a communication user for this scenario has to be created through SAP Fiori App Create Communication User.
Input for OData Service
The upload of interactions is always started through the Import Headers entity and a deep insert on the Interactions entity. The import header requires the following properties:
Table 48:
Property Mandatory Description
Id X Identifier for import
For each service request, a new ID has to be provided. If no value is provided, the system creates a default ID.
Timestamp X Time of upload
UserName Upload user
If no user name is provided the default (back end user) is used.
82 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Mandatory Description
SourceSystemType X Type of source system
SourceSystemId X Identifier for source system
The value is later used as a prefix to create unique external contact IDs.
The Interaction entity contains the following properties:
Table 49:
Property Mandatory Description
Key X Identifier (GUID) for interaction in this import (technical key)
Defaulted internally
CampaignId ID of a campaign in SAP CRM
CommunicationMedium Communication medium
Path to use for communication, such as email or text messages; the communication medium defines the communication means or path
ContactId External IDs of interaction contact data, such as Twitter ID, telephone number
ContactIdOrigin Origin of your contact IDs; indicates the source of this ID
ContentData Content of an email or a social media post
ContentTitle Title of the respective content, for example, email subject or the social media post (abbreviated)
If the content title is empty, the field is filled with the content data, see CONTENT_DATA field.
InitiativeId ID of the campaign in SAP Hybris Marketing
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 83
Property Mandatory Description
InitiativeVersion ID of the campaign version, which is derived from/belongs to the campaign ID
A campaign version is created for campaigns that are based on dynamic target groups once they are executed.
InteractionType Interaction types, such as click through or webinar (see table above)
Interaction types define what happened. They have a direction, inbound or outbound (from contact to system or from system to contact).
IsAnonymous Determines whether interaction is anonymous or not
Anonymous interactions do not refer to a contact person.
Latitude Latitude of a geographical location
Longitude Longitude of a geographical location
MarketingOrchestrationId ID of the campaign content
MarketingPermissionCommunicationMedium
The outbound communication medium for which permission is given. Mandatory only for interactions related to marketing permission (for example, MKT_PERM_OPTIN)
MarketingPermissionCommunicationDirection
Direction (inbound or outbound) of communication medium for which permission is given
Quantifier Weighting factor; can be used if the standard mechanism of counting interactions is not sufficient for your purposes
Reason Potential reasons for an interaction, for example, the soft bounce of an email because a recipient´s mailbox is full
SourceDataUrl Navigation URL of the source object, for example, the URL of a Twitter post
84 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Mandatory Description
SourceObjectId Object ID of the source object, for example, the GUID of the SAP Hybris Cloud for Customer opportunity or the original post ID of the respective social media network (such as TW or FB)
SourceObjectType Object type of the source object, for example, an opportunity in SAP Hybris Cloud for Customer
SourceObjectAdditionalID The external object ID of the source object
SourceSystemId ID of the system which stores the raw data or detailed information, such as a clickstream monitoring ID
SourceSystemType Type of system which stores the raw data or detailed information, such as a clickstream monitoring tool
StartingPointUrl Starting point URL of an interaction, such as a link in an email of a campaign for interaction type CLICK_THROUGH
StartingPointText Text of the starting point URL of an interaction such as the link text More Information in an email of a campaign for interaction type CLICK_THROUGH
Timestamp Timestamp in long form (YYYYMMDDhhmmss.mmmuuun)
The timestamp refers to the time when the interaction took place, not to the time of the record creation on the database.
Valuation Sentiment or opinion of interaction contacts (positive or negative)
Amount Amount
Currency Currency
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 85
The interest entity contains the following properties:
Table 50:
Property Mandatory Description
Key Identifier (GUID) of interaction product in this import (technical key)
Defaulted internally!
Interest X Item of interest
The product entity contains the following properties:
Table 51:
Property Mandatory Description
Key Identifier (GUID) of interaction product in this import
Defaulted internally!
ItemId X Product ID
RecommendationModelTypeID Product recommendation model type ID
SourceSystemId Product recommendation scenario ID
ItemType X Product type, for example SAP_CRM_PRODUCT, SAP_HYBRIS_PRODUCT, SAP_ERP_MATNR
Amount Product-related amount (related currency that applies is stored on root only
Description Product description
ImageUrl Image URL of the product
NavigationURL URL to product details
Quantifier Quantifier
Valuation Sentiment or opinion about the product (positive or negative)
Amount Amount
Quantity Quantity
UnitOfMeasure Unit of measure
86 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
If additionally object references for interactions are needed, the entity type InteractionAdditionalObjectReference has to be used.The additional object reference entity contains the following properties:
Table 52:
Property Mandatory Description
ObjectType X Type of object referenced
ObjectId X ID of object referenced
If additionally digital asset references for interactions are needed, the entity type InteractionDigitalAsset has to be used. The digital asset entity contains the following properties:
Table 53:
Property Mandatory Description
SourceSystemID X Source system of the digital asset
Name Name of interest
Id X Identifier of the digital asset
MIMEType MIME type of the digital asset, for example, text, image, audio, or video.
URL URL where the digital asset is located
CampaignId Identifier of the campaign
If additionally offer references for interactions are needed, the entity typeInteractionOffer has to be used. The offer entity contains the following properties:
Table 54:
Property Mandatory Description
Origin X Origin of the offer
ID X Identifier of the offer
ContentItemID ID of the content item of the offer
RecommendationScenarioID ID of the recommendation scenario
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 87
If additionally tag references for interactions are needed, the entity type InteractionTag has to be used. The tag entity contains the following properties:
Table 55:
Property Mandatory Description
TagType X Type of the tag
Tag X ID of the tag
Marketing Permissions and Interactions
There are some types of interactions that create or change marketing permissions. Marketing permissions are used to control whether or not communication is allowed with a contact using a certain communication medium, for example, email. Currently, email is supported as the communication medium.
To create a marketing permission, you can use the interaction type MKT_PERM_OPTIN (for an opt-in) or MKT_PERM_OPTOUT (for an opt-out). The following properties must be used in the OData call:
● InteractionType: MKT_PERM_OPTIN or MKT_PERM_OPTOUT● CommunicationMedium: the communication medium from which the permission request was triggered, for
example WEB● MarketingPermissionCommunicationMedium: communication medium for which the permission applies. The
value must be set to EMAIL.● ContactId: Email address● ContactIdOrigin: EMAIL
Call OData Service
To create interactions, a deep insert on entity ImportHeaders with HTTP method POST has to be performed.
Example in JSON format: POST HTTP Method on https://<customer_host> sap/opu/odata/sap/cuan_import_srv/ImportHeaders.
Syntax { "Id" : "", "Timestamp" : "/Date(1406014140593)/", "UserName" : "USER", "SourceSystemId" : "ANY", "Interactions" : [ { "Key" : "", "CampaignId" : "", "CommunicationMedium" : "WEB", "ContactId" : "[email protected]", "ContactIdOrigin" : "EMAIL", "ContentData" : "", "ContentTitle" : "", "InitiativeId" : "", "InitiativeVersion" : 0, "InteractionType" : "WEBSITE_VISIT", "IsAnonymous" : false, "MarketingOrchestrationId" : 0, "Quantifier" : 1, "SourceDataUrl" : "", "SourceObjectId" : "", "SourceObjectType" : "", "SourceSystemId" : "",
88 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
"SourceSystemType" : "", "StartingPointUrl" : "", "StartingPointText" : "", "Timestamp" : "/Date(1406014140583)/", "Valuation" : 0, "Products" : [ { "Key" : "", "ItemId" : "Product1", "SourceSystemId" : "hybris Web Shop 1", "ItemType" : "SAP_HYBRIS_PRODUCT", "Description" : "Example Description of Product1", "NavigationURL" : "http://www.sap.com" }, { "Key" : "", "ItemId" : "Product2", "SourceSystemId" : "hybris Web Shop 1", "ItemType" : "SAP_HYBRIS_PRODUCT", "Description" : "Example Description of Product2", "NavigationURL" : "http://www.sap.com" } ], "Interests" : [ { "Key" : "", "Interest" : "HANA" }, { "Key" : "", "Interest" : "BIG_DATA" } ] } ]}
OData Example
{ "Id" : "", "Timestamp" : "/Date(1449479875000)/", "UserName" : "USER", "SourceSystemId" : "ANY", "Interests" : [ { "Id" : "INTEREST_UPLOAD_TEST_1602_01", "Language" : "EN", "Description" : "Upload test 1602 01" }, { "Id" : "INTEREST_UPLOAD_TEST_1602_01", "Language" : "DE", "Description" : "Test Hochladen von Interessen 1602 01" }, { "Id" : "INTEREST_UPLOAD_TEST_1602_02", "Language" : "EN", "Description" : "Upload test 1602 02" }, { "Id" : "INTEREST_UPLOAD_TEST_1602_02", "Language" : "DE", "Description" : "Test Hochladen von Interessen 1602 02" } ] }
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 89
9.4 Import of Companies Using OData Service
The approach for creating or updating companies is similar to that used for interaction contacts. The entity types ImportHeader and Company are needed. The entity types ContactMarketingPermission and ContactFacet are optional.
CautionYou must specify a different ID Origin per source system or data source. In other words, if you import data from multiple sources, for example, from an ERP system, a CRM system, or a third-party system, you must ensure that the ID Origin for each source is different. Otherwise the data from one source will overwrite data imported from another source.
Create Companies
● Request URI: /sap/opu/odata/sap/CUAN_IMPORT_SRV/ImportHeaders● HTTP Method: Post● JSON example to create a company:
Sample Code
{ "Id" : "","Timestamp" : "/Date(1406014140922)/","UserName" : "anzeiger","SourceSystemType" : "EXT","SourceSystemId" : "ERP_08","Companies" : [{"IdOrigin" : "SAP_ERP_CUSTOMER","Id" : "47110815","Timestamp" : "/Date(1406014140601)/","City" : "Walldorf","CountryDescription" : "Germany","CompanyName" : "SAP SE","EMailAddress" : "[email protected]","FacebookId" : "FB_47110815","HouseNumber" : "16","IndustryDescription" : "IT","LanguageDescription" : "English","PhoneNumber" : "+496227747474","PostalCode" : "69190","Street" : "Dietmar-Hopp-Allee","Facets" : [{"IdOrigin" : "EMAIL","Id" : "[email protected]","Timestamp" : "/Date(1406014140601)/",},{"IdOrigin" : "SAP_CRM_BUPA","Id" : "47110815","Timestamp" : "/Date(1406014140601)/"}],
90 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
"MarketingPermissions" : [{"IdOrigin" : "EMAIL","Id" : "[email protected]","Timestamp" : "/Date(1406014140601)/","OptIn" : "Y","OutboundCommunicationMedium" : "EMAIL"}],"MarketingAttributes" : [{"CategoryDescription" : "Company Size","Value" : "Big"},{"CategoryDescription" : "Spoken Language","Value" : "English"},{"CategoryDescription" : "Spoken Language","Value" : "German"},{"CategoryDescription" : "Spoken Language","Value" : "French"}]}]}
Update Companies
The update of companies is performed using the same OData service as for the creation process. You must provide the properties SourceSystemId and ContactId so that the system can identify the companies to be updated. The system always updates a complete company; partial update of a company is not supported. This means that it is not possible to update only two attributes of a company, for example, as the empty attributes of the update would overwrite the existing attribute entries. If a facet is not provided anymore in the update case, the system sets this facet to obsolete in the target system.
● Request URI: /sap/opu/odata/sap/CUAN_IMPORT_SRV/ImportHeaders● HTTP Method: Post● JSON example – same as create case (see above)
Success Message
After a successful creation or update of companies, the system issues a success message.
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 91
Error Handling
Due to the fact that the attribute SourceSystemId is the only mandatory attribute, the system does not provide you with many error messages that result from the business logic.
Known root causes:
● The OData service is not active● The same identifier in the ImportHeader is used for more than one run
9.5 Import of Product Category and Product Data Using OData Services
Product categories and products are defined as master data rather than transactional data. Products can be categorized, for example, pens, ink cartridges, and erasers and are grouped together by the category Stationery.
The semantic key for products determines the uniqueness of a product record. The following fields are mandatory for product data:
Table 56:
Attribute Description
PRODUCT_ORIGIN Origin of the product data
PRODUCT_ID External ID of the product data
If the product is related to a category, this relationship is expressed using the category assignment. In this case, the category ID within the product data is depicted as an assignment key.
Product categories can be combined or set up by hierarchies. All categories are fixed elements of one particular hierarchy and can be hierarchically structured amongst themselves using the parent category assignment. The description of products and product categories is language-dependent. It consists of the following:
● Language key● Product or product category name such as MR-750 or Stationery.● Product or product category description such as The MR-750 computer includes 32 GB RAM.● Or stationery including pens, ink cartridges, and erasers.
You can upload product category data and product data separately. In general, you must upload category data before you upload product data. The exception is when you are uploading product data using OData services.
When you upload product data , you can include the category ID and hierarchy ID of an existing product category to establish the according assignment. If you do not need product category data, you can leave the fields related to the category empty. When uploading product categories, you can import only one hierarchy per upload process.
If you want to update existing product or product category data and add new data, this is possible in one joint upload process. New data will be created while existing data will be overwritten.
92 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
For a description of all fields that are supported for the import of product category and product data, see the Input for OData Services section below.
Upload of Product Attributes with the Upload of Interactions
If you upload interaction data and the system recognizes that a related product is missing, the system allows you to import product data with the upload of interactions. This option is valid for the initial upload of product data. The update of existing product data is not possible.
With the initial upload, the product data is created and the new technical key is stored as a reference at the PRODUCT node of the Interaction business object (CUAN_INTERACTION). If the same product is uploaded a second time, the system identifies the already existing product and the key is stored again to avoid the creation of duplicates. The existing product will not be updated. If you want to update the existing product data, you must use the dedicated product upload. A product that is imported using the interaction upload is available in Segmentation.
NoteThe upload of product attributes with the upload of interactions is currently supported for OData services only. It is not possible using CSV import.
Delivered Values
The following tables give an overview of the delivered values for the origin of the Product ID.
PRODUCT_ORIGIN - Defined Origins of Product ID: the origin of an ID indicates the source of the ID.
Table 57:
Origin of Contact Origin of Contact Description
SAP_CRM_PRODUCT SAP CRM Product
SAP_ERP_MATNR SAP ERP Material
SAP_HYBRIS_PRODUCT SAP hybris Commerce product
Importing Products and Product Categories Using OData Service
To create products or product categories the entity types ImportHeader, Product and/or ProductCategory are needed. The OData service allows you to import product and product category data in one upload process as it ensures the creation of the category before the corresponding product is created and assigned.
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 93
The product and category scenario contains an OData service with the URL https://<customer_host>sap/opu/odata/sap/cuan_import_srv/. To upload products and product categories, a communication user for this scenario must be created in the SAP Fiori app Create Communication User.
NoteNote that the syntax of additional fields, and all fields, in OData is Upper Camel Case and contains no underscores. For example, a field text TEXT40_1 is converted to Text401 or UNIT_OF_MEASURE1 is converted to UnitOfMeasure1 in OData.
Input for OData Service
The upload of products and product categories is always started through the Import Headers entity and a deep insert on the Product and ProductCategory entities. The import header requires the properties outlined in the following table:
Table 58:
Property Mandatory Description
Id X Identifier for import For each service request, a new ID has to be provided. If an empty value is provided, the system creates a default ID.
Timestamp X Time of upload
Username Upload user
If no user name is provided the default (back end user) is used
SourceSystemType X Type of source system
SourceSystemId X Identifier for source system
The value is later used as a prefix to create unique external contact IDs.
The Product Category entity contains the following properties:
Table 59:
Property Mandatory Description
Id X ID of product category
HierarchyId ID of product hierarchy
(defaulted internally if not provided)
ParentCategoryId ID of parent category
Name Product category name
94 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Property Mandatory Description
Description Description of product category
The Product entity contains the following properties:
Table 60:
Property Mandatory Description
Id X ID of product
IdOrigin X Origin of source of ID
RecommendationModelTypeId Product recommendation model type ID
Name Product name
Description Product description
ImageURL Image URL of the product
NavigationURL URL to product details
CategoryId ID of product category
HierarchyId ID of product hierarchy
Call OData Service
Create Product Categories
To create product categories, a deep insert on entity ImportHeaders with HTTP method POST has to be performed.
Example in JSON format: POST HTTP Method on https://<customer_host> sap/opu/odata/sap/cuan_import_srv/ImportHeaders
{ "Id" : "", "Timestamp" : "/Date(1406014140572)/", "UserName" : "USER", "SourceSystemId" : "ANY", "ProductCategories" : [ { "Id" : "CATEGORY-001", "HierarchyId" : "ODATA_UPLOAD-001", "ParentCategoryId" : "", "Name" : "Category Name 001", "Description" : "Product Category Description 001" }, { "Id" : "CATEGORY-002", "HierarchyId" : "ODATA_UPLOAD-001",
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 95
"ParentCategoryId" : "CATEGORY-001", "Name" : "Category Name 002", "Description" : "Product Category Description 002" } ] }
Create Products
To create products, a deep insert on entity ImportHeaders with HTTP method POST has to be performed.
Example in JSON format: POST HTTP Method on https://<customer_host> sap/opu/odata/sap/cuan_import_srv/ImportHeaders
{ "Id" : "", "Timestamp" : "/Date(1406014140572)/", "UserName" : "USER", "SourceSystemId" : "ANY", "Products" : [ { "IdOrigin" : "SAP_HYBRIS_PRODUCT", "Id" : "PRODUCT-001", "Name" : "Product Name 001", "Description" : "Product Description 001", "ImageUrl" : "http://go.sap.com/dam/application/imagelibrary/photos/275000/275296.jpg", "NavigationURL" : "http://www.sap.com", "CategoryId" : "CATEGORY-001", "HierarchyId" : "ODATA_UPLOAD-001" } ] }
Create Products and Product Categories in One Upload Process
To create products and product categories simultaneously in one single step, a deep insert on entity ImportHeaders with HTTP method POST has to be performed.
Example in JSON format: POST HTTP Method on https://<customer_host> sap/opu/odata/sap/cuan_import_srv/ImportHeaders
{ "Id" : "", "Timestamp" : "/Date(1406014140518)/", "UserName" : "USER", "SourceSystemId" : "ANY", "Products" : [ { "IdOrigin" : "SAP_HYBRIS_PRODUCT", "Id" : "PRODUCT-P-001", "Name" : "Product Name P-001", "Description" : "Product Description P-001", "ImageUrl" : "http://go.sap.com/dam/application/imagelibrary/photos/275000/275296.jpg", "NavigationURL" : "http://www.sap.com", "ProductCategories" : [ { "Id" : "CATEGORY-C-001", "HierarchyId" : "ODATA_UPLOAD-001" }, { "Id" : "CATEGORY-C-002", "HierarchyId" : "ODATA_UPLOAD-001" }
96 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
] }, { "IdOrigin" : "SAP_HYBRIS_PRODUCT", "Id" : "PRODUCT-P-002", "Name" : "Product Name P-002", "Description" : "Product Description P-002", "ImageUrl" : "http://go.sap.com/dam/application/imagelibrary/photos/275000/275296.jpg", "NavigationURL" : "http://www.sap.com", "ProductCategories" : [ { "Id" : "CATEGORY-C-001", "HierarchyId" : "ODATA_UPLOAD-001" }, { "Id" : "CATEGORY-C-002", "HierarchyId" : "ODATA_UPLOAD-001" } ] } ], "ProductCategories" : [ { "Id" : "CATEGORY-C-001", "HierarchyId" : "ODATA_UPLOAD-001", "ParentCategoryId" : "", "Name" : "Category Name C-001", "Description" : "Product Category Description C-001" }, { "Id" : "CATEGORY-C-002", "HierarchyId" : "ODATA_UPLOAD-001", "ParentCategoryId" : "", "Name" : "Category Name C-002", "Description" : "Product Category Description C-002" } ]}
9.6 Import of Marketing Locations Using an OData Service
A marketing location is defined as any physical or virtual location where a marketing activity can be conducted. It can be a brick and mortar store, a mall, a kiosk, a Web store, or even a beach area where marketers can distribute their coupons.
Marketing locations can be maintained using the corresponding app in the system. Additionally, they can be imported from other systems using a public OData application programming interface (API). You can use the public OData service CUAN_MARKETING_LOCATION_IMP_SRV to upload (import) and read external marketing locations.
Entity Data Model
The following tables list the details of the Marketing Location Import service entities.
Table 61:
OData Version: 2.0
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 97
Root URL: https://<Server>:<Port>/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/
Permissions: PFCG role: SAP_COM_CSR_0003
Support of OData Features: See the following chapters for implementation details and search behavior of the OData services.
Table 62: Entity Data Model: Marketing Locations
Name Is Key Edm Core Type
Max Length
Creatable Updatable Sortable Nullable Filterable Complex Type Name
LocationID TRUE Edm.String
50 TRUE FALSE TRUE FALSE TRUE n.a.
LocationOrigin
TRUE Edm.String
30 TRUE FALSE TRUE FALSE TRUE n.a.
LocationName
FALSE Edm.String
80 TRUE TRUE TRUE TRUE TRUE n.a.
CompanyName
FALSE Edm.String
80 TRUE TRUE FALSE TRUE FALSE n.a.
MallName FALSE Edm.String
40 TRUE TRUE FALSE TRUE FALSE n.a.
Introduction
FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
AdditionalInforma-tion
FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
Special FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
MarketingAreaId
FALSE Edm.String
40 TRUE TRUE TRUE TRUE TRUE n.a.
TypeCode FALSE Edm.String
20 TRUE TRUE TRUE TRUE TRUE n.a.
CountryCode
FALSE Edm.String
3 TRUE TRUE TRUE TRUE TRUE n.a.
City FALSE Edm.String
40 TRUE TRUE TRUE TRUE TRUE n.a.
RegionCode
FALSE Edm.String
3 TRUE TRUE TRUE TRUE TRUE n.a.
Postcode FALSE Edm.String
10 TRUE TRUE FALSE TRUE FALSE n.a.
Street FALSE Edm.String
60 TRUE TRUE FALSE TRUE FALSE n.a.
98 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Name Is Key Edm Core Type
Max Length
Creatable Updatable Sortable Nullable Filterable Complex Type Name
HouseNum
FALSE Edm.String
10 TRUE TRUE FALSE TRUE FALSE n.a.
Building FALSE Edm.String
20 TRUE TRUE FALSE TRUE FALSE n.a.
Floor FALSE Edm.String
10 TRUE TRUE FALSE TRUE FALSE n.a.
RoomNo FALSE Edm.String
10 TRUE TRUE FALSE TRUE FALSE n.a.
TelnrLong FALSE Edm.String
30 TRUE TRUE FALSE TRUE FALSE n.a.
FaxnrLong FALSE Edm.String
30 TRUE TRUE FALSE TRUE FALSE n.a.
SmtpAddr FALSE Edm.String
241 TRUE TRUE FALSE TRUE FALSE n.a.
WebUri FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
ImageUri FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
OpenHours
FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
Categories FALSE Edm.String
-- TRUE TRUE FALSE TRUE FALSE n.a.
ValidFromDate
FALSE Edm.DateTime
-- TRUE TRUE TRUE TRUE TRUE n.a.
ValidToDate
FALSE Edm.DateTime
-- TRUE TRUE TRUE TRUE TRUE n.a.
Obsolete FALSE Edm.String
1 TRUE TRUE TRUE TRUE TRUE n.a.
DigitalAccountID
FALSE Edm.String
40 TRUE TRUE TRUE TRUE TRUE n.a.
DigitalAccountType
FALSE Edm.String
10 TRUE TRUE TRUE TRUE TRUE n.a.
Language FALSE Edm.String
1 TRUE TRUE TRUE TRUE TRUE n.a.
Latitude FALSE Edm.Decimal
-- TRUE TRUE TRUE TRUE TRUE n.a.
Longitude FALSE Edm.Decimal
-- TRUE TRUE TRUE TRUE TRUE n.a.
SpatialReferenceId
FALSE Edm.String
-10 TRUE TRUE TRUE TRUE TRUE n.a.
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 99
It is possible to create and change marketing locations using OData batch processing.
The fields of the OData entities have the following meaning:
● Marketing Location○ LocationID: The unique location ID provided by the external system which serves, in the import
scenario, as part of the internal marketing location key.○ LocationOrigin: A unique identifier of the origin of the external marketing location. This origin ID also
serves in the import scenario as part of the internal marketing location key.○ LocationName: Name of the external marketing location (free text).○ CompanyName: Name of the company associated with the external marketing location (free text).○ MallName: Name of the mall if the external marketing location is in a shopping mall (free text).○ Introduction: Introduction (free text).○ AdditionalInformation: Additional information related to the marketing location (free text).○ Special: Special Information related to the marketing location (free text).○ MarketingAreaID: The ID of the marketing area, which has to be known by the system.○ TypeCode: Marketing Location Type.
The marketing locations are defined in the configuration (CUANV_LOC_TYPE). The following default types are available:○ MALL: Shopping Mall○ ONLINE_STORE: Online Store○ PHYSICAL_STORE: Physical Store
○ CountryCode: Country code.○ City: City (free text).○ RegionCode: Marketing location region code.○ Postcode: Marketing location address postal code.○ Street: Marketing location address street name.○ Building: Marketing location address building.○ Floor: Marketing location address floor number.○ RoomNo: Marketing location address room number.○ TelnrLong: Marketing location telephone number.○ FaxnrLong: Marketing location fax number.○ SmtpAddr: Marketing location e-mail address.○ WebUri: Marketing location Web URI.○ ImageUri: URI for the image to be used to represent the marketing location.○ OpenHours: Marketing location open hours.○ Categories: Marketing location business categories (free text).○ ValidFromDate: The validity start date of the marketing location.○ ValidToDate: The validity end date of the marketing location.○ Obsolete: Do not use.
Note: If, for example, marketing locations are deleted in the original system which sends them via OData, obsolete can be set to true (X).
○ DigitalAccountID: Digital account ID associated to the marketing location.○ DigitalAccountType: Digital account type of the digital account associated to the marketing location.○ Language: Marketing location language code.
100 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
○ Latitude: Latitude value of address, for example: 55,64813464.○ Longitude: Longitude value of address, for example: -3,24568414.○ SpatialReferenceId: Geo location spatial ref ID of the marketing location.
Calling the OData Service Operation
Create Request
The upload of marketing locations data starts as a post request using batch processing. The following example shows the coding for creating multiple marketing locations.
URL (POST): /sap/opu/odata/sap /CUAN_MARKETING_LOCATION_IMP_SRV/$batch
Request Header
Enter Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: multipart/mixed; boundary=changeset--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPOST Locations HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000<?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:LocationID>LOC1309</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1309</d:LocationName><d:CompanyName>CompanyName for LOC1309</d:CompanyName><d:MallName>MallName for LOC1309</d:MallName><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1309</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:Language>E</d:Language><d:DigitalAccountID>test222</d:DigitalAccountID><d:DigitalAccountType>WEC_SUBACC</d:DigitalAccountType>
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 101
<d:Longitude>1010</d:Longitude><d:Latitude>1020</d:Latitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId><d:ValidFromDate>2016-09-13T08:01</d:ValidFromDate><d:ValidToDate>2016-09-13T08:01</d:ValidToDate></m:properties></atom:content></atom:entry>--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPOST Locations HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000<?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:LocationID>LOC1409</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1409</d:LocationName><d:CompanyName>CompanyName for LOC1409</d:CompanyName><d:MallName>MallName for LOC1409</d:MallName><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1409</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:Language>E</d:Language><d:DigitalAccountID>test222</d:DigitalAccountID><d:DigitalAccountType>WEC_SUBACC</d:DigitalAccountType><d:Longitude>1010</d:Longitude><d:Latitude>1020</d:Latitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId><d:ValidFromDate>2016-09-14T08:01</d:ValidFromDate><d:ValidToDate>2016-09-14T08:01</d:ValidToDate></m:properties></atom:content></atom:entry>--changeset----batch--
Response
Response Codes
102 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Example for response in case of successful creation:
--C3B0988F46AC4AC9F15E17F0C060050A0 Content-Type: multipart/mixed; boundary=C3B0988F46AC4AC9F15E17F0C060050A1Content-Length: 5449--C3B0988F46AC4AC9F15E17F0C060050A1Content-Type: application/httpContent-Length: 2575content-transfer-encoding: binaryHTTP/1.1 201 CreatedContent-Type: application/atom+xml;type=entryContent-Length: 2301location: https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')dataserviceversion: 2.0<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')</id><title type="text">Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')</title><updated>2016-09-13T15:47:13Z</updated><category term="CUAN_MARKETING_LOCATION_IMP_SRV.Location" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')" rel="self" title="Location"/><content type="application/xml"><m:properties><d:LocationID>LOC1309</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1309</d:LocationName><d:CompanyName>CompanyName for LOC1309</d:CompanyName><d:MallName>MallName for LOC1309</d:MallName><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1309</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Categories/><d:ValidFromDate>2016-09-13T00:00:00</d:ValidFromDate><d:ValidToDate>2016-09-13T00:00:00</d:ValidToDate><d:Obsolete/><d:DigitalAccountID>test222</d:DigitalAccountID><d:DigitalAccountType>WEC_SUBACC</d:DigitalAccountType><d:Language>E</d:Language><d:Latitude>1020.0000000000</d:Latitude><d:Longitude>1010.0000000000</d:Longitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId>
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 103
</m:properties></content></entry>--C3B0988F46AC4AC9F15E17F0C060050A1Content-Type: application/httpContent-Length: 2575content-transfer-encoding: binaryHTTP/1.1 201 CreatedContent-Type: application/atom+xml;type=entryContent-Length: 2301location: https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')dataserviceversion: 2.0<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')</id><title type="text">Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')</title><updated>2016-09-13T15:47:13Z</updated><category term="CUAN_MARKETING_LOCATION_IMP_SRV.Location" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')" rel="self" title="Location"/><content type="application/xml"><m:properties><d:LocationID>LOC1409</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1409</d:LocationName><d:CompanyName>CompanyName for LOC1409</d:CompanyName><d:MallName>MallName for LOC1409</d:MallName><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1409</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Categories/><d:ValidFromDate>2016-09-14T00:00:00</d:ValidFromDate><d:ValidToDate>2016-09-14T00:00:00</d:ValidToDate><d:Obsolete/><d:DigitalAccountID>test222</d:DigitalAccountID><d:DigitalAccountType>WEC_SUBACC</d:DigitalAccountType><d:Language>E</d:Language><d:Latitude>1020.0000000000</d:Latitude><d:Longitude>1010.0000000000</d:Longitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId></m:properties></content>
104 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
</entry>--C3B0988F46AC4AC9F15E17F0C060050A1----C3B0988F46AC4AC9F15E17F0C060050A0--
Example for response in case of error during creation:
--A8844D2A97F36CE1AB062A098A41423D0 Content-Type: application/httpContent-Length: 1229content-transfer-encoding: binaryHTTP/1.1 400 Bad RequestContent-Type: application/xml;charset=utf-8Content-Length: 1109dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>CX_ST_MATCH_ELEMENT/D79846DB5F914A4DA0C78A5F26310A11</code><message xml:lang="en">System expected end of element '{http://www.w3.org/2005/Atom}entry'</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_LOCATION_IMP_SRV</service_id><service_version>0001</service_version></application><transactionid>57D7DA1FD92F1E58E10000000A445B65</transactionid><timestamp>20160913155237.0977530</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><errordetails/></innererror></error>--A8844D2A97F36CE1AB062A098A41423D0--
Update Request
The following example shows the coding for updating Multiple Marketing Locations.
URL (POST):/sap/opu/odata/sap /CUAN_MARKETING_LOCATION_IMP_SRV/$batch Request Header
Enter Request Header Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: multipart/mixed; boundary=changeset--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPUT Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI') HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 105
<?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:LocationID>LOC1309</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1309 Update</d:LocationName><d:CompanyName>CompanyName for LOC1309 Update</d:CompanyName><d:MallName>MallName for LOC1309 Update</d:MallName><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1309</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:Language>E</d:Language><d:DigitalAccountID>test222</d:DigitalAccountID><d:DigitalAccountType>WEC_SUBACC</d:DigitalAccountType><d:Longitude>1010</d:Longitude><d:Latitude>1020</d:Latitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId><d:ValidFromDate>2016-09-13T08:01</d:ValidFromDate><d:ValidToDate>2016-09-13T08:01</d:ValidToDate></m:properties></atom:content></atom:entry>--changeset----batch--
Example for response in case of successful update:
--BB2970BAF345D3B9A1732E1819A3049F0 Content-Type: multipart/mixed; boundary=BB2970BAF345D3B9A1732E1819A3049F1Content-Length: 238--BB2970BAF345D3B9A1732E1819A3049F1Content-Type: application/httpContent-Length: 71content-transfer-encoding: binaryHTTP/1.1 204 No ContentContent-Length: 0dataserviceversion: 2.0--BB2970BAF345D3B9A1732E1819A3049F1----BB2970BAF345D3B9A1732E1819A3049F0—
Example for response in case of failed update:
--115619F6A9253BD869F9FD9FB247481F0 Content-Type: application/httpContent-Length: 1327content-transfer-encoding: binary
106 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
HTTP/1.1 400 Bad RequestContent-Type: application/xml;charset=utf-8Content-Length: 1207dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>/IWBEP/CM_MGW_RT/022</code><message xml:lang="en">Location Key mismatched.</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_LOCATION_IMP_SRV</service_id><service_version>0001</service_version></application><transactionid>57D73783D93C1E67E10000000A445B65</transactionid><timestamp>20160913174530.8639530</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><errordetails><errordetail><code>/IWBEP/CX_MGW_BUSI_EXCEPTION</code><message>Location Key mismatched</message><propertyref/><severity>error</severity><target/></errordetail></errordetails></innererror></error>--115619F6A9253BD869F9FD9FB247481F0--
Delete Request
The Delete of Marketing Locations data is started as a post request using batch processing. The Delete request will set the deleted Marketing Location property “Obsolete” to true (X).
The following example shows the coding for deleting a Marketing Location.
URL (POST): /sap/opu/odata/sap /CUAN_MARKETING_LOCATION_IMP_SRV/$batchRequest Header
Enter Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: multipart/mixed; boundary=changeset--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryDELETE Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI') HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000--changeset--
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 107
--batch-- Response
Response Codes
Example for response in case of successful deletion:
--E39D08BA9681B0858BBE7CBCE606822C0 Content-Type: multipart/mixed; boundary=E39D08BA9681B0858BBE7CBCE606822C1Content-Length: 238--E39D08BA9681B0858BBE7CBCE606822C1Content-Type: application/httpContent-Length: 71content-transfer-encoding: binaryHTTP/1.1 204 No ContentContent-Length: 0dataserviceversion: 2.0--E39D08BA9681B0858BBE7CBCE606822C1----E39D08BA9681B0858BBE7CBCE606822C0—Example for response in case of error during deletion:--919A691B78E12B52C00D5C7BE02C885F0Content-Type: application/httpContent-Length: 1990content-transfer-encoding: binaryHTTP/1.1 500 Internal Server ErrorContent-Type: application/xml;charset=utf-8Content-Length: 1860dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>/IWBEP/CM_MGW_RT/058</code><message xml:lang="en">Missing response data in changeset deferred processing mode. Diagnosis Missing response data for some operation in a changeset running in defer mode System Response Procedure Fix the programming error in data provider Procedure for System Administration</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_LOCATION_IMP_SRV</service_id><service_version>0001</service_version></application><transactionid>57E0ADFA967D1FCFE10000000A445B65</transactionid><timestamp>20160920204523.3643380</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><longtext_url>/sap/opu/odata/iwbep/message_text;o=LOCAL_CEI/T100_longtexts(MSGID='%2FIWBEP%2FCM_MGW_RT',MSGNO='058',MESSAGE_V1='',MESSAGE_V2='',MESSAGE_V3='',MESSAGE_V4='')/$value</longtext_url><errordetails><errordetail><code>/IWBEP/CX_MGW_TECH_EXCEPTION</code><message>Missing response data in changeset deferred processing mode</message><longtext_url>/sap/opu/odata/iwbep/message_text;o=LOCAL_CEI/T100_longtexts(MSGID='%2FIWBEP%2FCM_MGW_RT',MSGNO='058',MESSAGE_V1='',MESSAGE_V2='',MESSAGE_V3='',MESSAGE_V4='')/$value</longtext_url><propertyref/>
108 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
<severity>error</severity><target/></errordetail></errordetails></innererror></error>--919A691B78E12B52C00D5C7BE02C885F0--
Read Request
The Read of marketing locations data is started as a post request using batch processing. The following example shows the coding for reading a marketing location.
URL (POST): /sap/opu/odata/sap /CUAN_MARKETING_LOCATION_IMP_SRV/$batch
Request Header
Enter Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: application/httpContent-Transfer-Encoding: binaryGET Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI') HTTP/1.1--batchContent-Type: application/httpContent-Transfer-Encoding: binaryGET Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI') HTTP/1.1--batch-- ResponseResponse CodesExample for response in case of successful read--C69ACC18C865F01E7D4C11B98951636C0Content-Type: application/httpContent-Length: 2428content-transfer-encoding: binaryHTTP/1.1 200 OKContent-Type: application/atom+xml;type=entryContent-Length: 2256dataserviceversion: 2.0sap-metadata-last-modified: Tue, 20 Sep 2016 17:09:27 GMT<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')</id><title type="text">Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')</title><updated>2016-09-20T20:48:51Z</updated><category term="CUAN_MARKETING_LOCATION_IMP_SRV.Location" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Locations(LocationID='LOC1309',LocationOrigin='WECHAT_POI')" rel="self" title="Location"/><content type="application/xml"><m:properties><d:LocationID>LOC1309</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1309 Update again</d:LocationName><d:CompanyName>CompanyName for LOC1309 Update</d:CompanyName><d:MallName>MallName for LOC1309 Update</d:MallName><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation>
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 109
<d:Special>Sales every day</d:Special><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1309</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Categories/><d:ValidFromDate>2016-09-13T00:00:00</d:ValidFromDate><d:ValidToDate>2016-09-13T00:00:00</d:ValidToDate><d:Obsolete/><d:DigitalAccountID/><d:DigitalAccountType/><d:Language/><d:Latitude>1020.0000000000</d:Latitude><d:Longitude>1010.0000000000</d:Longitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId></m:properties></content></entry>--C69ACC18C865F01E7D4C11B98951636C0Content-Type: application/httpContent-Length: 2401content-transfer-encoding: binaryHTTP/1.1 200 OKContent-Type: application/atom+xml;type=entryContent-Length: 2229dataserviceversion: 2.0sap-metadata-last-modified: Tue, 20 Sep 2016 17:09:27 GMT<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')</id><title type="text">Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')</title><updated>2016-09-20T20:48:51Z</updated><category term="CUAN_MARKETING_LOCATION_IMP_SRV.Location" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')" rel="self" title="Location"/><content type="application/xml"><m:properties><d:LocationID>LOC1409</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1409</d:LocationName><d:CompanyName>CompanyName for LOC1409</d:CompanyName><d:MallName>MallName for LOC1409</d:MallName><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode>
110 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
<d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1409</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Categories/><d:ValidFromDate>2016-09-14T00:00:00</d:ValidFromDate><d:ValidToDate>2016-09-14T00:00:00</d:ValidToDate><d:Obsolete/><d:DigitalAccountID/><d:DigitalAccountType/><d:Language/><d:Latitude>1020.0000000000</d:Latitude><d:Longitude>1010.0000000000</d:Longitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId></m:properties></content></entry>--C69ACC18C865F01E7D4C11B98951636C0--
Example for response in case of error during read:
--CD0C57931505332CF17EBF7692F71CDD0 Content-Type: application/httpContent-Length: 1361content-transfer-encoding: binaryHTTP/1.1 404 Not FoundContent-Type: application/xml;charset=utf-8Content-Length: 1243dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>/IWBEP/CM_MGW_RT/020</code><message xml:lang="en">Resource not found for segment 'Location'.</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_LOCATION_IMP_SRV</service_id><service_version>0001</service_version></application><transactionid>57E09590967D1FD1E10000000A445B65</transactionid><timestamp>20160920205037.7722580</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><errordetails><errordetail><code>/IWBEP/CX_MGW_BUSI_EXCEPTION</code><message>Resource not found for segment 'Location'</message><propertyref/><severity>error</severity>
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 111
<target/></errordetail></errordetails></innererror></error>--CD0C57931505332CF17EBF7692F71CDD0Content-Type: application/httpContent-Length: 2401content-transfer-encoding: binaryHTTP/1.1 200 OKContent-Type: application/atom+xml;type=entryContent-Length: 2229dataserviceversion: 2.0sap-metadata-last-modified: Tue, 20 Sep 2016 17:09:27 GMT<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')</id><title type="text">Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')</title><updated>2016-09-20T20:50:37Z</updated><category term="CUAN_MARKETING_LOCATION_IMP_SRV.Location" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Locations(LocationID='LOC1409',LocationOrigin='WECHAT_POI')" rel="self" title="Location"/><content type="application/xml"><m:properties><d:LocationID>LOC1409</d:LocationID><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationName>Location Name for LOC1409</d:LocationName><d:CompanyName>CompanyName for LOC1409</d:CompanyName><d:MallName>MallName for LOC1409</d:MallName><d:Introduction>Best prices on the market</d:Introduction><d:AdditionalInformation>Gift Certificates available</d:AdditionalInformation><d:Special>Sales every day</d:Special><d:MarketingAreaId>MEDIA_TYPE</d:MarketingAreaId><d:TypeCode>MALL</d:TypeCode><d:CountryCode>CA</d:CountryCode><d:City>Montreal</d:City><d:RegionCode>QC</d:RegionCode><d:Postcode>H9X2R2</d:Postcode><d:Street>DUKE</d:Street><d:HouseNum>111</d:HouseNum><d:Building>Building1409</d:Building><d:Floor>FOURTH</d:Floor><d:RoomNo>LAGRANGE</d:RoomNo><d:TelnrLong>5149999999</d:TelnrLong><d:FaxnrLong>5149999999</d:FaxnrLong><d:SmtpAddr>[email protected]</d:SmtpAddr><d:WebUri>example.com</d:WebUri><d:ImageUri>example.com</d:ImageUri><d:OpenHours>Monday To Friday from 9am to 5pm</d:OpenHours><d:Categories/><d:ValidFromDate>2016-09-14T00:00:00</d:ValidFromDate><d:ValidToDate>2016-09-14T00:00:00</d:ValidToDate><d:Obsolete/><d:DigitalAccountID/><d:DigitalAccountType/><d:Language/><d:Latitude>1020.0000000000</d:Latitude><d:Longitude>1010.0000000000</d:Longitude><d:SpatialReferenceId>Ref070903</d:SpatialReferenceId></m:properties></content>
112 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
</entry>--CD0C57931505332CF17EBF7692F71CDD0--
9.7 Import of Marketing Beacons Using an OData Service
You can import marketing beacons into SAP Hybris Marketing Cloud using the OData Service CUAN_MARKETING_BEACON_IMPORT (OData service for Marketing Beacon Import).
A marketing beacon is defined as a tiny, battery-powered, Bluetooth, low energy- based device that can be used locate a mobile app user in a precise physical location, so that a marker can conduct location- relevant marketing activities.
Entity Data Model
The following tables list the details of the Marketing Beacons Import service entities.
Table 63:
OData Version: 2.0
Root URL: https://<Server>:<Port>/sap/opu/odata/SAP/CUAN_MARKETING_LOCATION_IMP_SRV/
Permissions: PFCG role: SAP_COM_CSR_0003
Support of OData Features: See the following chapters for implementation details and search behavior of the OData services.
Table 64: Entity Data Model: Marketing Beacons
Name Is Key Edm Core Type
Max Length
Creatable Updatable Sortable Nullable Filterable Complex Type Name
Id TRUE Edm.String
50 TRUE FALSE TRUE FALSE TRUE n.a.
Description
FALSE Edm.String
-- TRUE TRUE TRUE TRUE TRUE n.a.
Type FALSE Edm.String
20 TRUE TRUE TRUE TRUE TRUE n.a.
UUID FALSE Edm.String
40 TRUE TRUE TRUE TRUE TRUE n.a.
Major FALSE Edm.Int32 -- TRUE TRUE TRUE TRUE TRUE n.a.
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 113
Name Is Key Edm Core Type
Max Length
Creatable Updatable Sortable Nullable Filterable Complex Type Name
Minor FALSE Edm.Int32 -- TRUE TRUE TRUE TRUE TRUE n.a.
Latitude FALSE Edm.Decimal
-- TRUE TRUE TRUE TRUE TRUE n.a.
Longitude FALSE Edm.Decimal
-- TRUE TRUE TRUE TRUE TRUE n.a.
LocationOrigin
FALSE Edm.String
30 TRUE TRUE TRUE TRUE TRUE n.a.
LocationId FALSE Edm.String
50 TRUE TRUE TRUE TRUE TRUE n.a.
It is possible to create, change, and read marketing beacons using OData batch processing.
The fields of the OData entities have the following meaning:
● Marketing Beacon○ Id: The unique marketing beacon ID provided by the external system which serves, in the import
scenario, as the internal marketing beacon key.○ Description: Description of the external marketing beacon (free text).○ UUID: iBeacon Universally Unique Identifier. It contains 32 hexadecimal digits, split into 5 groups,
separated by dashes.○ Major: Major and Minor values are numbers assigned to iBeacons to identify them with greater accuracy
than only using UUID. Major values are intended to identify and distinguish a group. For example, all beacons in on a certain floor or room could be assigned a unique Major value.
○ Minor: Major and Minor values are numbers assigned to iBeacons to identify them with greater accuracy than only using UUID. Minor values are intended to identify and distinguish an individual. For example, distinguishing individual beacons within a group of beacons assigned a Major value.
○ Latitude: Latitude value of an address. For example: 55,64813464.○ Longitude: Longitude value of an address. For example: -3,24568414.○ SpatialReferenceId: Geo Beacon Spatial Ref ID of the marketing beacon.○ LocationId: Marketing location ID.○ LocationOrigin: Origin of the marketing location.
Calling the OData Service Operation
Create Request
The upload of marketing beacons data is started as a post request using batch processing. The following example shows the coding for creating multiple marketing beacons.
URL (POST): /sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/$batch
114 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Request Header
Enter Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: multipart/mixed; boundary=changeset--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPOST Beacons HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000 <?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:Id>BEACON1409</d:Id><d:Description>This is BEACON1409</d:Description><d:Type>IBEACON</d:Type><d:UUID>f7826da6-4fa2-4e98-8024-bc5b71e0893e</d:UUID><d:Major>782</d:Major><d:Minor>5710893</d:Minor><d:Latitude>5564813464</d:Latitude><d:Longitude>-324568414</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties></atom:content></atom:entry>--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPOST Beacons HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000<?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:Id>BEACON1509</d:Id><d:Description>This is BEACON01509</d:Description><d:Type>IBEACON</d:Type><d:UUID>f7826da6-4fa2-4e98-8024-bc5b71e0893e</d:UUID><d:Major>7826</d:Major><d:Minor>5710893</d:Minor><d:Latitude>5564813464</d:Latitude><d:Longitude>-324568414</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties></atom:content></atom:entry>--changeset----batch--
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 115
Response
Response Codes
Example for response in case of successful creation:
--F8C2A9724F37B985A59D553A3D2061B10Content-Type: multipart/mixed; boundary=F8C2A9724F37B985A59D553A3D2061B11Content-Length: 3218--F8C2A9724F37B985A59D553A3D2061B11Content-Type: application/httpContent-Length: 1459content-transfer-encoding: binaryHTTP/1.1 201 CreatedContent-Type: application/atom+xml;type=entryContent-Length: 1221location: https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/Beacons('BEACON14092')dataserviceversion: 2.0<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/Beacons('BEACON14092')</id><title type="text">Beacons('BEACON14092')</title><updated>2016-09-14T14:08:45Z</updated><category term="CUAN_MARKETING_BEACON_IMPORT_SRV.Beacon" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Beacons('BEACON14092')" rel="self" title="Beacon"/><content type="application/xml"><m:properties><d:Id>BEACON14092</d:Id><d:Description>This is BEACON14092</d:Description><d:Type>IBEACON</d:Type><d:UUID>f7826da6-4fa2-4e98-8001-bc5b71e0893e</d:UUID><d:Major>7826</d:Major><d:Minor>5710893</d:Minor><d:Latitude>5564813464.0000000000</d:Latitude><d:Longitude>-324568414.0000000000</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties></content></entry>--F8C2A9724F37B985A59D553A3D2061B11Content-Type: application/httpContent-Length: 1460content-transfer-encoding: binaryHTTP/1.1 201 CreatedContent-Type: application/atom+xml;type=entryContent-Length: 1222location: https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/Beacons('BEACON15092')dataserviceversion: 2.0<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/Beacons('BEACON15092')</id><title type="text">Beacons('BEACON15092')</title><updated>2016-09-14T14:08:45Z</updated>
116 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
<category term="CUAN_MARKETING_BEACON_IMPORT_SRV.Beacon" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Beacons('BEACON15092')" rel="self" title="Beacon"/><content type="application/xml"><m:properties><d:Id>BEACON15092</d:Id><d:Description>This is BEACON015092</d:Description><d:Type>IBEACON</d:Type><d:UUID>f7826da6-4fa2-4e98-8003-bc5b71e0893e</d:UUID><d:Major>7826</d:Major><d:Minor>5710893</d:Minor><d:Latitude>5564813464.0000000000</d:Latitude><d:Longitude>-324568414.0000000000</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties></content></entry>--F8C2A9724F37B985A59D553A3D2061B11----F8C2A9724F37B985A59D553A3D2061B10--
Example of response in case of error during creation:
--8D802B497485B141A6EDF3DE68FA52900 Content-Type: application/httpContent-Length: 1227content-transfer-encoding: binaryHTTP/1.1 400 Bad RequestContent-Type: application/xml;charset=utf-8Content-Length: 1107dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>CX_SY_CONVERSION_NO_NUMBER/995DB739AB5CE919E10000000A11447B</code><message xml:lang="en">The argument 'f7826da6' cannot be interpreted as a number</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_BEACON_IMPORT_SRV</service_id><service_version>0001</service_version></application><transactionid>57D75FBFD9771E8DE10000000A445B65</transactionid><timestamp>20160914135857.6382290</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><errordetails/></innererror></error>--8D802B497485B141A6EDF3DE68FA52900--
Update Request
The following example shows the coding for updating multiple marketing beacons.
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 117
URL (POST):/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/$batchRequest Header
Enter Request Header Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: multipart/mixed; boundary=changeset--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPUT Beacons('BEACON14092') HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000<?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:Id>BEACON14092</d:Id><d:Description>This is BEACON14092 updated</d:Description><d:Type>IBEACON</d:Type><d:UUID>f7826da6-4fa2-4e98-8001-bc5b71e0893e</d:UUID><d:Major>782601</d:Major><d:Minor>571089301</d:Minor><d:Latitude>5564813464</d:Latitude><d:Longitude>-324568414</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties></atom:content></atom:entry>--changesetContent-Type: application/httpContent-Transfer-Encoding: binaryPUT Beacons('BEACON15092') HTTP/1.1Content-Type: application/atom+xmlContent-Length: 10000<?xml version="1.0" encoding="utf-8" standalone="yes"?><atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><atom:content type="application/xml"><m:properties><d:Id>BEACON15092</d:Id><d:Description>This is BEACON15092 updated</d:Description><d:Type>IBEACON</d:Type><d:UUID>f7826da6-4fa2-4e98-8001-bc5b71e0893e</d:UUID><d:Major>782601</d:Major><d:Minor>571089301</d:Minor><d:Latitude>5564813464</d:Latitude><d:Longitude>-324568414</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties></atom:content></atom:entry>--changeset----batch--
118 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Example for response in case of successful update:
--E8643A5BE493A2D3C214DB5895D712730 Content-Type: multipart/mixed; boundary=E8643A5BE493A2D3C214DB5895D712731Content-Length: 437--E8643A5BE493A2D3C214DB5895D712731Content-Type: application/httpContent-Length: 71content-transfer-encoding: binaryHTTP/1.1 204 No ContentContent-Length: 0dataserviceversion: 2.0--E8643A5BE493A2D3C214DB5895D712731Content-Type: application/httpContent-Length: 71content-transfer-encoding: binaryHTTP/1.1 204 No ContentContent-Length: 0dataserviceversion: 2.0--E8643A5BE493A2D3C214DB5895D712731----E8643A5BE493A2D3C214DB5895D712730--
Example for response in case of failed update:
--0A9BEE26120EBEE0946EBFF19EFD878B0 Content-Type: application/httpContent-Length: 1229content-transfer-encoding: binaryHTTP/1.1 400 Bad RequestContent-Type: application/xml;charset=utf-8Content-Length: 1109dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>CX_SY_CONVERSION_NO_NUMBER/995DB739AB5CE919E10000000A11447B</code><message xml:lang="en">The argument '571089301a' cannot be interpreted as a number</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_BEACON_IMPORT_SRV</service_id><service_version>0001</service_version></application><transactionid>57D7A124D93C1E85E10000000A445B65</transactionid><timestamp>20160914141542.6286740</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><errordetails/></innererror></error>--0A9BEE26120EBEE0946EBFF19EFD878B0--
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 119
Read Request
The Read of marketing beacons data is started as a post request using batch processing. The following example shows the coding for reading a marketing beacon.
URL (POST):/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/$batch Request Header
Enter Content-Type as: multipart/mixed; boundary=batch
Request Body Example
--batch Content-Type: application/httpContent-Transfer-Encoding: binaryGET Beacons(Id='BEACON070901') HTTP/1.1--batch--
Response
Response Codes
Example for response in case of successful read:
--ADA8B585B0BC057CDCE0A004D77C02080 Content-Type: application/httpContent-Length: 1375content-transfer-encoding: binaryHTTP/1.1 200 OKContent-Type: application/atom+xml;type=entryContent-Length: 1203dataserviceversion: 2.0sap-metadata-last-modified: Wed, 07 Sep 2016 14:37:50 GMT<?xml version="1.0" encoding="utf-8"?><entry xml:base="https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/" xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"><id>https://ldciana.wdf.sap.corp:44300/sap/opu/odata/SAP/CUAN_MARKETING_BEACON_IMPORT_SRV/Beacons('BEACON070901')</id><title type="text">Beacons('BEACON070901')</title><updated>2016-09-20T20:54:24Z</updated><category term="CUAN_MARKETING_BEACON_IMPORT_SRV.Beacon" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/><link href="Beacons('BEACON070901')" rel="self" title="Beacon"/><content type="application/xml"><m:properties><d:Id>BEACON070901</d:Id><d:Description>This is BEACON070901 update</d:Description><d:Type>IBEACON</d:Type><d:UUID>UIUD070901U</d:UUID><d:Major>101101</d:Major><d:Minor>101101</d:Minor><d:Latitude>7090101.0000000000</d:Latitude><d:Longitude>7090101.0000000000</d:Longitude><d:SpatialReferenceId>SIRD01</d:SpatialReferenceId><d:LocationOrigin>WECHAT_POI</d:LocationOrigin><d:LocationId>286603472</d:LocationId></m:properties>
120 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
</content></entry>--ADA8B585B0BC057CDCE0A004D77C02080--
Example for response in case of error during read:
--5AF6C91241CBEC15A03A7454A074870F0 Content-Type: application/httpContent-Length: 1358content-transfer-encoding: binaryHTTP/1.1 404 Not FoundContent-Type: application/xml;charset=utf-8Content-Length: 1240dataserviceversion: 1.0<?xml version="1.0" encoding="utf-8"?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code>/IWBEP/CM_MGW_RT/020</code><message xml:lang="en">Resource not found for segment 'Beacon'.</message><innererror><application><component_id>CEC-MKT-CEI</component_id><service_namespace>/SAP/</service_namespace><service_id>CUAN_MARKETING_BEACON_IMPORT_SRV</service_id><service_version>0001</service_version></application><transactionid>57E0E025967D1FC0E10000000A445B65</transactionid><timestamp>20160920205555.8115870</timestamp><Error_Resolution><SAP_Transaction>Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details</SAP_Transaction><SAP_Note>See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)</SAP_Note><Batch_SAP_Note>See SAP Note 1869434 for details about working with $batch (https://service.sap.com/sap/support/notes/1869434)</Batch_SAP_Note></Error_Resolution><errordetails><errordetail><code>/IWBEP/CX_MGW_BUSI_EXCEPTION</code><message>Resource not found for segment 'Beacon'</message><propertyref/><severity>error</severity><target/></errordetail></errordetails></innererror></error>--5AF6C91241CBEC15A03A7454A074870F0--
9.8 Import of Marketing Permission and Subscription Data Using OData Service
During campaign execution within SAP Hybris Marketing Cloud it is important to know the Marketing Permissions or Subscriptions for the contacts to be addressed.
The following are the base attributes of Marketing Permission/Subscription:
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 121
Table 65:
CONTACT_FACET_ID External ID of Interaction Contact Data
CONTACT_FACET_ID_ORIGIN Origin of Interaction Contact Data
IA_TIMESTAMP UTC Time Stamp in Long Form (YYYYMMDDhhmmssmmmuuun)
OPT_IN Opt-In for Marketing Permission
OUTBOUND_COMM_MEDIUM Communication Medium
COMM_DIRECTION Direction of Communication
COMM_CAT_KEY Communication Category ID
SOURCE_OBJECT_ID Generic Object ID
SOURCE_OBJECT_TYPE Object Name
SOURCE_SYSTEM_ID Interaction Source System ID
SOURCE_SYSTEM_TYPE Interaction Source System Type
SOURCE_DATA_URL Interaction Source URL
COMM_MEDIUM Communication Medium
Enhancing the Marketing Permission and Subscription Data
You can add more fields in the SAP Fiori app Custom Fields and Logic (catalog role SAP_BCR_CORE_EXT). Select the business context Marketing: Permission.
Importing Marketing Permission and Subscription Data Using OData Service
Marketing permissions and subscriptions can be created and updated using the Import of Interaction Contact Data scenario. This scenario contains an OData service with the URL: https://<customer_host>/sap/opu/odata/sap/cuan_import_srv/. For more information, see Import of Interaction Contact Data Using OData Services [page 58]. To upload marketing permissions and subscription data, you need to create a communication user for this scenario in the SAP Fiori app Create Communication User.
The upload of marketing permissions and subscriptions is always started through the Import Headers entity and a deep insert on the ContactMarketingPermission entity. The Import Headers entity requires the following entries:
122 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
Table 66:
Property Mandatory Description
ID Yes Identifier for import
For each service request, a new ID has to be provided. If an empty value is provided, the system creates a default ID.
Timestamp Yes Time of upload
UserName No User who uploads data
If no user name is provided, the default (backend user) is used.
SourceSystemType Yes Type of source system
SourceSystemId Yes Identifier of the source system
The value is later used as a prefix to create unique external contact IDs.
The ContactMarketingPermission entity contains the following input properties:
Table 67:
Property Mandatory Description
Id Yes External ID of Interaction Contact, for example:
● Email address● Cell phone number● Landline number
IdOrigin Yes Identifies the data source, for example:
● EMAIL - email● MOBILE - nobile● PHONE - phone● FAX - fax● SAP_C4C_BUPA - SAP C4C Busi
ness Partner
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 123
Property Mandatory Description
Timestamp Yes Timestamp of upload in format yyyyMMddhhmmss
NoteIf a permission or subscription record exists, an update will only be processed when this timestamp is more current than the timestamp of the permission or subscription record.
OptIn Yes Opt-in
Values: Y = yes; N = no
OutboundCommunicationMedium Yes Outbound communication medium for which the marketing permission applies (for example EMAIL or SMS)
CommunicationDirection No Direction of communication medium for which permission is given
Values: Outbound = O, Inbound = I
CommunicationCategoryId Yes, but only when importing subscription data
ID of the subscription object, for example, Newsletter ID
SourceObjectId No Object ID of the source object, for example, the GUID of the SAP Cloud for Customer Landing Page
SourceObjectType No Object type of the source object, for example, a Landing Page in SAP Cloud for Customer
SourceSystemId No ID of the system which stores the raw data or detailed information, such as a clickstream monitoring ID
SourceSystemType No Type of system which stores the raw data or detailed information, such as a clickstream monitoring tool
SourceDataUrl No Navigation URL of the source object, for example, the URL of a Web shop
CommunicationMedium Yes The communication medium from which the permission request was triggered, for example WEB
124 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
If you use the Import Dataor Custom Fields and Logic apps, the extension fields are added as properties to the ContactMarketingPermission entity. To see the available properties, open the metadata document with the following URL: https://<customer_host>/sap/opu/odata/sap/cuan_import_srv/$metadata.
Checks During Upload
During the upload, the system from SAP Hybris Marketing Cloud checks if the mandatory fields of the marketing permission or subscription are provided by the external source system or not. If one of these fields is not provided, a creation or an update of a permission/subscription record is not possible.
The contact, who needs to be found by the specified properties Id and IdOrigin, must have already been created and must be unique. The import of entity ContactMarketingPermissions does not create interaction contacts.
It is also not possible to import marketing permissions or subscriptions for shareable Ids. Therefore use the import of Interaction Contact (entity Contacts and entity ContactMarketingPermisssions), see Import of Interaction Contact Data Using OData Services [page 58].
If a permission or subscription record still exists, this record will only be updated when the timestamp of the corresponding record in the payload is more recent than the timestamp of the existing record.
NoteIf the properties Id and IdOrigin are specified as follows, the import function will try to determine which facets depend on the main facet SAP_C4C_BUPA of the contact. Depending on the value of property OutboundCommunicationMedium, the system creates or updates the marketing permission or subscription record for the corresponding facets.
Table 68:
Property Value
Id ‘SAP_C4C_BUPA’
IdOrigin <ID of the business partner in the C4C system>
Call OData Service
To create or update interaction contacts, a deep insert on entityImportHeaders with HTTP method POST has to be performed. The following code sample shows an example in JSON format:
Sample CodePOST HTTP Method on https://<customer_host>sap/opu/odata/sap/cuan_import_srv/ImportHeaders
{ "Id" : "", "Timestamp" : "2017-02-22T16:52:12",
Data Management Upload Interfaces 1705Import of Data Using OData Service CUAN_IMPORT_SRV C U S T O M E R 125
"SourceSystemType" : "EXT", "SourceSystemId" : "ANY", "ContactMarketingPermissions" : [ { "Id" : "[email protected]", "IdOrigin" : "EMAIL", "Timestamp" : "2017-02-22T16:52:12", "OptIn" : "Y", "OutboundCommunicationMedium" : "EMAIL", "CommunicationMedium" : "EMAIL", "CommunicationDirection" : "O" }, { "Id" : "[email protected]", "IdOrigin" : "EMAIL", "Timestamp" : "2017-02-22T16:52:13", "CommunicationCategoryId" : "27927", "OptIn" : "Y", "OutboundCommunicationMedium" : "EMAIL", "CommunicationMedium" : "EMAIL", "CommunicationDirection" : "O" } ]}
OData Service Output
If the upload was successful, the OData service responses with HTTP status 201 Created.
If the call fails, the HTTP status is 400 Bad Request with an error message.
126 C U S T O M E RData Management Upload Interfaces 1705
Import of Data Using OData Service CUAN_IMPORT_SRV
10 Use Cases for Importing Data
You can create interactions that are used to import data to your system, including:
● For interactions that can be used to create newsletter subscriptions, see Import Interactions for Newsletter Subscriptions [page 129]
● For interactions needed for creating or removing marketing permissions, see Import Interactions for Marketing Permissions [page 130]
10.1 Import Contacts with Marketing Permissions from an External Source System
This use case describes how to import interaction contacts in an initial upload from an external source system that already have marketing permissions set.
The OData service CUAN_IMPORT_SRV can be used to create interaction contacts. For this you need a contact, with possibly multiple facets, and the corresponding marketing permissions, all of which are imported in one call.
As a result, it is necessary to create a contact that contains the entities of OData service CUAN_IMPORT_SRV according to the following hierarchy:
● Top Level: ImportHeader● Second Level: Contact● Third Level: ContactFacets and ContactMarketingPermissions
Example:
Max Mustermann, a consumer from a web shop, with web shop account numer 12345, living in Bahnhofstr. 1,Munich 82674, with the mobile number 01511234567 and the email address [email protected] has given permission to be contacted by email but forbidden contact by phone. The following tables outline the properties that are necessary to represent this example:
Table 69: Contact
Property Name Description
ContactId Web shop account number: 12345
ContactIdOrigin ID Origin must be WEB_SHOP_ACCOUNT
FirstName Max
LastName Mustermann
FullName Max Mustermann
Data Management Upload Interfaces 1705Use Cases for Importing Data C U S T O M E R 127
Property Name Description
GenderDescription Male
IsConsumer TRUE
Timestamp Format: number of milliseconds since midnight Jan 1, 1970. For example: "/ Date(1406014140922)/"
Street From the address: Bahnhofstrasse
HouseNumber From the address: 1
PostalCode 80000
City Munich
Country Germany
Table 70: CONTACT FACET - EMAIL
Property Name Description
IDOrigin EMAIL
Table 71: CONTACT FACET - PHONE
Property Name Description
ID 0151634789
IDOrigin MOBILE
Table 72: CONTACT MARKETING PERMISSION - EMAIL
Property Name Description
Id Facet Identifier: [email protected]
IdOrigin Origin of facet identifier (values defined in Customizing view CUANV_CE_ORIGIN): EMAIL
Timestamp Timestamp of facet. Format: number of milliseconds since midnight Jan 1, 1970. For example: "/ Date (1406014140922)/"
OptIn Consent
OutboundCommunicationMedium Communication to which the consent is given: EMAIL
CommunicationDirection Whether the direction of permission is inbound (I) or outbound (O)
128 C U S T O M E RData Management Upload Interfaces 1705
Use Cases for Importing Data
Table 73: CONTACT MARKETING PERMISSION - PHONE
Property Name Description
Id Facet Identifier: 0151634789
IdOrigin Origin of facet identifier (values defined in Customizing view CUANV_CE_ORIGIN): PHONE
Timestamp Timestamp of facet. Format: number of milliseconds since midnight Jan 1, 1970. For example: "/ Date(1406014140922)/"
OptIn No Consent
OutboundCommunicationMedium Communication to which the consent is given: PHONE
CommunicationDirection Whether the direction of permission is inbound (I) or outbound (O)
10.2 Import Interactions for Newsletter Subscriptions
This document describes the use case for creating interactions that are used to create newsletter subscriptions in SAP Hybris Marketing Cloud.
The OData service CUAN_IMPORT_SRV can be used to create interactions. If you want to create a newsletter subscription, you must create an interaction using the type NEWSLETTER_SUBSCR. If you want to unsubscribe a contact from a newsletter, you must create an interaction using the interaction type NEWSLETTER_UNSUBSCR. The newsletter ID must be contained in the entity InteractionAdditionalObjectReference.
As a result, it is necessary to create an interaction for both actions, subscribe and unsubscribe, which contains the entities of OData service CUAN_IMPORT_SRV according to the following hierarchy:
● Top Level: ImportHeader● Second Level: Interaction● Third Level: InteractionAdditionalObjectReference (contains the newsletter ID)
If one interaction contact has subscribed to several newsletters simultaneously, it is possible to pass several entries for entity InteractionAdditionalObjectReference for a single interaction record. The following tables outline the properties that are necessary to subscribe or unsubscribe from a newsletter:
Table 74:
Property Name Description
ContactId Email address of the interaction contact
ContactIdOrigin ID Origin must be EMAIL
Data Management Upload Interfaces 1705Use Cases for Importing Data C U S T O M E R 129
Property Name Description
InteractionType NEWSLETTER_SUBSCR
NEWSLETTER_UNSUBSCR
CommunicationMedium Describes where the subscription occurred, for example, WEB or SYSTEM
Timestamp Specify when the newsletter was subscribed to or unsubscribed from
MarketingPermissionCommunicationMedium EMAIL
MarketingPermissionDirection This must be O for Outbound
Table 75:
Property Name Description
ObjectType A newsletter is represented by a communication category, so you must use CUAN_COMMUNICATION_CATEGORY
ObjectID ID of the communication category; length 10
10.3 Import Interactions for Marketing Permissions
This document describes the use case for creating interactions needed for creating or removing marketing permissions in SAP Hybris Marketing Cloud.
You can import marketing permissions into the system using interactions either in CSV files or using an OData service.
If you use an OData service, you must create an interaction that contains the entities of OData service CUAN_IMPORT according to the following hierarchy:
● Top Level: ImportHeader● Second Level: Interaction
The following table outlines the properties that are necessary to create or remove marketing permissions using an OData service or CSV file:
Table 76:
Property Name Description
ContactId ID for interaction contact facet, for example, email address for an email permission or phone number for a phone permission
130 C U S T O M E RData Management Upload Interfaces 1705
Use Cases for Importing Data
Property Name Description
ContactIdOrigin ID origin for interaction contact facet, for example, EMAIL, PHONE, MOBILE, or FAX
InteractionType MKT_PERM_OPTIN
MKT_PERM_OPTOUT
CommunicationMedium Describe where the permission was created, for example, WEB or SYSTEM
Timestamp Specify when the permission was given
MarketingPermissionCommunicationMedium Specify what kind of permission will be given, for example, EMAIL, PHONE, or SMS
MarketingPermissionDirection This must be O for Outbound or I for an inbound permission. The default is O. Inbound permissions are only relevant for storing social media posts.
Data Management Upload Interfaces 1705Use Cases for Importing Data C U S T O M E R 131
11 Appendix
Interactions
In this section, you find an overview of all fields supported for the import of interaction data together with the corresponding description according to structure CUAN_S_CE_IA_EXT.
Within the structure, you can find fields with unspecified names. If you want to use these fields because the available fields with specified names do not meet your requirements, you must ensure that the required additional fields are added in the Custom Fields and Logic app. For more information about how to do this, see http://help.sap.com/s4hana SAP S/4HANA Cloud <latest version> Additional Information Product AssistanceGeneric Information General Functions for the Key User Extensibility Custom Fields and Logic .
Table 77:
Field (Technical Name) Used in CSV
OData Property What It Contains
ID_ORIGIN ContactIdOrigin The origin of your contact IDs. The origin of an ID indicates the source of this ID.In the following, you find an overview of all fields supported for the import of product data together with a corresponding description according to structure
ID ContactId The external IDs of your interaction contact data such as Twitter ID, telephone number.
COMM_MEDIUM CommunicationMedium In the following, you find an overview of all fields supported for the import ofThe communication medium, which is a path to use for communication such as email or text message. The communication medium defines by what means, by which path, something happened.
IA_TYPE InteractionType Interaction types such as Click Through, Webinar, Survey Response etc. Interaction types define what happened. They have a direction, inbound or outbound (from contact to system or from system to contact). Additionally, they can have a reason, for example Mailbox is full for the interaction type Soft Bounce.
132 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Field (Technical Name) Used in CSV
OData Property What It Contains
TIMESTAMP Timestamp The timestamp in long form (YYYYMMDDhhmmss.mmmuuun). The timestamp refers to the time the interaction took place, not to the time the record was created on the database.
Examples for OData Format:
● Number of milliseconds since midnight Jan 1, 1970. /Date(1406014140922)/
● YY-MM-DDThh:mm:ss
SOURCE_OBJECT_TYPE SourceObjectType The object type of the source object, for example, an opportunity in SAP Hybris Cloud for Customer.
SOURCE_OBJECT_ID SourceObjectId The object ID of the source object, for example, the GUID of the SAP Hybris Cloud for Customer opportunity or the original post ID of the respective social media network (such as TW or FB).
INTERESTS Interests The interaction interests of your contacts. In a deep structure, it is a table, in a flat structure it is identical with INTEREST_ITEM.
● INTEREST_ITEM: interaction interest
● INTEREST_QUANTIFIER: This field is a weighting factor for the interest, which you can use if the standard mechanism of handling interests is not sufficient for your purposes.
● INTEREST_VALUATION: This field contains the sentiment or opinion of interaction contacts (positive or negative) regarding the interest, which you can use if the standard mechanism of handling valuation is not sufficient for your purposes.
Data Management Upload Interfaces 1705Appendix C U S T O M E R 133
Field (Technical Name) Used in CSV
OData Property What It Contains
PRODUCTS
● OBJECT_TYPE● OBJECT_ID● PRODUCT_QUANTIFIER● PRODUCT_VALUATION● PRODUCT_IMAGE_URL● PRODUCT_NAV_URL● PRODUCT_NAME● PRODUCT_DESC● AMOUNT● QUANTITY● UNIT_OF_MEASURE● PRECO_MODEL_TYPE● PRECO_SYSTEM● IA_PROD_STATUS● IA_PROD_REASON
Products
● ItemType● ItemId● Quantifier● Valuation● ImageUrl● NavigationURL● Name● Description● Amount● Quantity● UnitOfMeasure● RecommendationModelTy
peID● SourceSystemId● Not in ODdata● Not in OData
The interaction products of your contacts. In a deep structure, it is a table. In a flat structure, it is not available.
● This field contains the product origin as defined in Customizing.
● This field contains the ID of the product.● This field is a weighting factor for the product, which
you can use if the standard mechanism of handling products is not sufficient for your purposes.
● This field contains the sentiment or opinion of interaction contacts (positive or negative) regarding the product, which you can use if the standard mechanism of handling valuation is not sufficient for your purposes.
● This field contains the URL of the product image.● This field contains the product details URL containing
images, descriptions and pricing and shipping information, for example.
● This field contains the name of the product.● This field contains the detailed descriptions of the
product.● This field contains the product amount. The related
currency is located on/in/at the interaction itself.● This field contains the quantity of the product.● This field contains the unit of measure of the product.● This field contains the Product Recommendation
Model Type ID. This field should be filled if an interaction is related to a Product Recommendation (Click Through/Conversion).
● This field contains the Product Recommendation Scenario ID. This field should be filled if an interaction is related to a Product Recommendation (Click Through/Conversion).
● This field contains the status of a line item of an interaction. For information about importing business documents using the OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV, see the Importing Business Documents guide at http://
help.sap.com/mkt SAP Hybris Marketing Cloud
SAP Hybris Marketing Cloud Product Page
Integration .● This field contains the reason for changes in the line
item
134 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Field (Technical Name) Used in CSV
OData Property What It Contains
PRODUCT_CATEGORIES
● HIERARCHY_ID● CATEGORY_ID● PROD_CAT_QUANTIFIER● PRODUCT_CAT_VALUATIO
N
ProductCategories
● HierarchyId● CategoryId● Quantifier● Valuation
The interaction product category. In a deep structure, it is a table. In a flat structure, it is not available.
● This field contains the hierarchy ID.● This field contains the ID of the category.● This field is a weighting factor for the product cate
gory, which you can use if the standard mechanism of handling product categories is not sufficient for your purposes.
● This field contains the sentiment or opinion of interaction contacts (positive or negative) regarding the product category, which you can use if the standard mechanism of handling valuation is not sufficient for your purposes.
TAGS
● TAG_TYPE● TAG:
Tags:
● TagType● Tag
In a deep structure, it is a table. In a flat structure, it is not available.
● This field contains the tag type● This field contains the tag itself.
DIGITAL_ASSETS
● DIGITAL_ASSET_SYSTEM.
● DIGITAL_ASSET_ID.● DIGITAL_ASSET_NAME● DIGITAL_ASSET_MIME_T
YPE● DIGITAL_ASSET_URL:● INITIATIVE_ID
DigitalAssets:
● SourceSystemId● Id● Name● MIMEType● URL● CampaignId
The digital assets. In a deep structure, it is a table. In a flat structure, it is not available.
● This field contains the system of the digital asset.● This field contains the ID of the digital asset.● This field contains the name of the digital asset● This field contains the MIME type of the digital asset
(for example text, image, audio or video).● This field contains the URL where the digital asset is
located● This field contains the initiative ID.
ADD_OBJ_REFS
● OBJECT_TYPE● OBJECT_ID
AdditionalObjectReferences:
● ObjectType● ObjectId
In a deep structure, it is a table. In a flat structure, it is not available.
● This field contains the type of the object referenced, for example CUAN_OFFER.
● This field contains the ID of the object referenced.
Data Management Upload Interfaces 1705Appendix C U S T O M E R 135
Field (Technical Name) Used in CSV
OData Property What It Contains
OFFERS
● OFFER_ORIGIN ● OFFER_ID● OFFER_CONTENT_ITEM_I
D● RECO_SCENARIO
Offers:
● Origin● Id● ContentItemId● RecommendationScenari
oId
The offers. In a deep structure, it is a table. In a flat structure, it is not available.
● This field contains the Indicator for the offer origin used when importing offers from another system, e.g. SAP_PMR for offers from SAP Promotion Management for Retail.
● This field contains the identifier of the offer.● This field contains the ID of the content item of the
offer. Together with Language and CommunicationMedium of the Interaction Header, the offer content can be identified.
● This field contains recommendation scenario ID. If you use Offer Recommendation Intelligence (ORI), this field indicates the recommendation scenario used to recommend this offer.
CAMPAIGN_ID - The ID of a campaign in SAP CRM.
INITIATIVE_ID InitiativeId The ID of the campaign (formerly initiative).
INI_VERSION InitiativeVersion The ID of the campaign version, which is derived from or belongs to the campaign ID. A campaign version is created for campaigns that are based on dynamic target groups once they are executed.
LOC_ORIGIN MarketingLocationOrigin The origin of your Marketing Location IDs. The origin of an ID indicates the source of this ID.
LOC_ID MarketingLocationId The ID of the Marketing Location where the interaction took place such as a Mall or Shop
DIGACC_ID DigitalAccountId Digital Account ID, mit der Kontakt aufgenommen wurde
DIGACC_TYPE DigitalAccountType The Digital Account Type is the Type of Digital Account ID
MARKETING_ORCHESTRATION_ID
InitiativeVersion The ID of the campaign content (in SP05, the descriptor of this field was Marketing Engagement ID; renamed to Campaign Content ID in SP06).
QUANTIFIER Quantifier This field is a weighting factor, which you can use if the standard mechanism of counting interactions is not sufficient for your purposes.
VALUATION Valuation The sentiment or opinion of interaction contacts (positive or negative).
136 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Field (Technical Name) Used in CSV
OData Property What It Contains
IA_STATUS Not in OData Status of an interaction (typically replicated from a business document).
For information about replicating SAP Hybris Cloud for Customer business documents to SAP Hybris Marketing interactions using the OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV see the Importing Business Documents guide at http://help.sap.com/mkt
SAP Hybris Marketing Cloud SAP Hybris Marketing
Cloud Product Page Integration .
IA_REASON Reason The potential reasons for an interaction, for example, the soft bounce of an email due to a recipient's full mailbox.
IA_LANGUAGE Not in OData Language of the text of the interaction. This can differ from the user’s language. It can be used for example in newsletters.
IS_ANONYMOUS IsAnonymous Information as to whether an interaction is anonymous or not. Anonymous interactions do not refer to a contact person.
AMOUNT Amount An amount of money which is related to an interaction. The amount is concatenated to the field CURRENCY.
CURRENCY Currency The currency which is related to an interaction. The currency is concatenated to the field AMOUNT.
MKT_PERM_DIRECTION MarketingPermissionDirection
Direction of the marketing permission information of an interaction contact per communication medium (I = inbound or O = outbound)
MKT_PERM_COMM_MEDIUM MarketingPermissionCommunicationMedium
The marketing permission information of an interaction contact per communication medium. For example, an interaction contact has given consent to be contacted via email.
LATITUDE Latitude The latitude of a geographical location where the interaction took place.
LONGITUDE Longitude The longitude of a geographical location where the interaction took place.
UNIT - This field is obsolete. Do not use.
Data Management Upload Interfaces 1705Appendix C U S T O M E R 137
Field (Technical Name) Used in CSV
OData Property What It Contains
SRID SpatialReferenceId Spatial Reference Identifier is a unique value used to unambiguously identify projected, unprojected, and local spatial coordinate system definitions. Defines, where latitude and longitude belong.
DEVICE_FT Device Name of the device used in this interaction
SOURCE_SYSTEM_TYPE SourceSystemType The type of system which stores the raw data or detailed information such as a clickstream monitoring tool.
SOURCE_SYSTEM_ID SourceSystemId The ID of the system which stores the raw data or detailed information such as a clickstream monitoring ID.
SOURCE_OBJECT_ADD_ID SourceObjectAdditionalId The external object ID of the source object, for example, the ID of the SAP Hybris Cloud for Customer opportunity.
SOURCE_OBJECT_STATUS_CODE
Not in OData Information about the status of the source object such as Completed for a SAP Hybris Cloud for Customer opportunity.
SOURCE_DATA_URL SourceDataUrl The navigation URL of the source object, for example, the URL of a Twitter post.
SOURCE_TIMESTAMP Not in OData of the Import Service but inOData of Business Documents
Timestamp of the source object in the source system
For example, the timestamp when a contract was created in the source system. This is different from the timestamp of the last change date of the contract.
For information about importing business documents using the OData service CUAN_BUSINESS_DOCUMENT_IMP_SRV, see the Importing Business Docu
ments guide at http://help.sap.com/mkt SAP Hybris
Marketing Cloud SAP Hybris Marketing Cloud Product
Page Integration .
LAUNCH_URL StartingPointUrl The starting point URL of an interaction such as a link in an email of a campaign for interaction type CLICK_THROUGH.
LAUNCH_TEXT StartingPointText The text of the starting point URL of an interaction such as the link text "More Information" in an email of a campaign for interaction type CLICK_THROUGH.
LAUNCH_LINK_KEY Not in OData The key of the starting point URL of an interaction such as the key of the link in an email of a campaign for interaction type CLICK_THROUGH that an interaction contact has clicked.
138 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Field (Technical Name) Used in CSV
OData Property What It Contains
IC_UPDATE_MODE Not in OData Values defining how an interaction contact is to be updated. The allowed values are N (= no update), F (= full update), or D (= delta update).
CONTENT_TITLE ContentTitle The title of the respective content, for example, email subject or the social media post (abbreviated). If the content title is empty, the field is filled with the content data (see field CONTENT_DATA).
CONTENT_DATA ContentData The content of an email or a social media post.
NAME_TEXT - The full name of the interaction contact (first name and last name).
NAME_FIRST - The first name of the interaction contact.
NAME_LAST - The last name of the interaction contact.
TITLE - The key for the title of the interaction contact such as 0001.
TITLE_FT - A free text for the title of the interaction contact.
COUNTRY - The country key of the interaction contact such as DE, US.
COUNTRY_FT - A free text for the country the interaction contact.
REGION - The region key of the interaction contact such as 08, CA.
REGION_FT - A free text for the region of the interaction contact.
CITY1 - The name of the city of the interaction contact.
POSTCODE1 - The postal code of the city of the interaction contact.
STREET - The street of the interaction contact.
HOUSE_NUM1 - The house number of the interaction contact.
LANGUAGE - The language key.
LANGUAGE_FT - A free text for the language.
SEX - The key for the sex of the interaction contact such as 1, 2, … .
SEX_FT - A free text for the sex of the interaction contact.
Data Management Upload Interfaces 1705Appendix C U S T O M E R 139
Field (Technical Name) Used in CSV
OData Property What It Contains
MARITAL_STATUS - The key for the marital status of your interaction contacts such as 01, 02.
MARITAL_STATUS_FT - A free text for the marital status of the interaction contact.
CONSUMER_ACCOUNT_ID - The account ID of a consumer in B2C.
KUNNR - The account ID of a company in B2B.
COMPANY_NAME - A free text for the company of your interaction contacts.
BRSCH - This field contains the industry key of your interaction contacts.
BRSCH_FT - A free text for the industry of your interaction contacts.
ABTNR - The department key of your interaction contacts.
ABTNR_FT - A free text for the department of your interaction contacts.
PAFKT - The function key of your interaction contacts.
PAFKT_FT - A free text for the function of your interaction contacts.
SMTP_ADDR - This field contains the SMTP address of the email address.
TELNR_LONG - This field contains the long version of a telephone number including dialing code, number, and extension.
Format: +country code region code + phone number e.g. +49151123456
TELNR_MOBILE - The long version of a mobile phone number including dialing code, number, and extension.
Format: +country code region code + phone number e.g. +49151123456
FAXNR_LONG - The long version of a fax number including dialing code, number, and extension.
Format: +country code region code + fax number e.g. +49151123456
DATE_OF_BIRTH - The date of birth of an interaction contact.
140 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Field (Technical Name) Used in CSV
OData Property What It Contains
IS_CONTACT - Information as to whether an interaction contact is a contact or not.
IS_CONSUMER - Information as to whether an interaction contact is a consumer or not.
OBSOLETE - Information as to whether an object is obsolete or not.
EMAIL_OPTIN - Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Information as to whether an interaction contact allows to be contacted by email or not, or if this information is not available.
PHONE_OPTIN - Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Information as to whether an interaction contact allows to be contacted by landline phone or not, or if this information is not available.
MOBILE_OPTIN - Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Information as to whether an interaction contact allows to be contacted by mobile phone or not, or if this information is not available.
FAX_OPTIN - Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Information as to whether an interaction contact allows to be contacted by fax or not, or if this information is not available.
POSTAL_OPTIN - Obsolete. We recommend that you use entity ContactMarketingPermissions to add marketing permissions.
Information as to whether an interaction contact allows to be contacted by mail or not, or if this information is not available.
WEB_URI - A Web address that is related to a company, for example.
Data Management Upload Interfaces 1705Appendix C U S T O M E R 141
Field (Technical Name) Used in CSV
OData Property What It Contains
IMAGE_URI - A Web address that is related to a contact image.
CUAN_E_CE_IA_RT - Dummy field in extension include INCL_EEW_CUAN_CE_IA_ROOT
CUAN_E_CE_IA_IC_RT - Dummy field in extension include INCL_EEW_CUAN_CE_IA_IC
Products
CUAN_S_PRODUCT_EXT.
Within the structure, you find fields with unspecified names. If you want to use these fields since the available fields with specified names do not cover your requirements, you must ensure the required additional fields are added in the Custom Fields and Logic app. For more information about how to do this, see http://help.sap.com/s4hana SAP S/4HANA Cloud <latest version> Additional Information Product Assistance Generic Information General Functions for the Key User Extensibility Custom Fields and Logic .
Table 78:
Field (Technical Name) Used in CSV
OData Property What It Contains
PRODUCT_ORIGIN IdOrigin This field contains the origin of a product indicating the source of this product such as SAP Hybris Commerce Product.
PRODUCT_ID Id This field contains the external product ID from the source of this product.
IMAGE_URL ImageUrl This field contains a URL to an image of the product.
NAV_URL NavigationURL This field contains a URL to the details of the product.
DESCRIPTIONS
● LANGU ● NAME● DESCRIPTION
Descriptions:
● Language● Name● Description
This is a component with a table containing the following fields:
● This field contains the language key of the product description.
● This field contains the name of the product such as MR-750.
● This field contains the actual description of the product such as The MR-750 computer provides 32 GB RAM.
142 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Field (Technical Name) Used in CSV
OData Property What It Contains
CATEGORIES:
● HierarchyId● CategoryId
Categories:
● HIERARCHY_ID● CATEGORY_ID
This is a component with a table containing the following fields:
● This field contains the external ID of the hierarchy data to which the product is assigned.
● This field contains the external ID of the category data to which the product is assigned.
Product Categories
In the following, you find an overview of all fields supported for the import of product data together with a corresponding description according to structure CUAN_S_PROD_CAT_EXT.
Within the structure, you find fields with unspecified names. If you want to use these fields since the available fields with specified names do not cover your requirements, you must ensure the required additional fields are added in the Custom Fields and Logic app. For more information about how to do this, see http://help.sap.com/s4hana SAP S/4HANA Cloud <latest version> Additional Information Product Assistance Generic Information General Functions for the Key User Extensibility Custom Fields and Logic .
Table 79:
Field (Technical Name) Used in CSV
OData Property What It Contains
HIERARCHY_ID HierarchyId This field contains the external ID of the hierarchy data to which the product category is assigned.
CATEGORY_ID Id This field contains the ID of the product category.
PARENT_CATEGORY_ID
ParentCategoryId This field contains the ID of a category that serves as the parent for another category.
CATEGORY_DESCRIPTIONS
● LANGU ● NAME● DESCRIPTION
Category Descriptions:
● Language● Name● Description
This is a component with a table containing the following fields:
● This field contains the language key of the product category description.
● This field contains the name of the product category such as Stationery.
● This field contains the actual description of the product category such as Stationery includes pens, erasers, ink cartridges.
Data Management Upload Interfaces 1705Appendix C U S T O M E R 143
Interests
The following table contains an overview of all fields supported for the import of interest data, together with the corresponding description according to structure CUAN_S_INTEREST_EXT.
Table 80: Interests
Field (Technical Name) Used in CSV OData Property What It Contains
INTEREST_ITEM Id This field contains the interest ID, such as SAP_HYBRIS_MARKETING.
DESCRIPTION:
● SPRAS● INTEREST_ITEM_DESC
● Language● Description
This is a component with a table containing the following fields:
● This field contains the language key of the product description.
● This field contains the actual description of the interest, such as BIG DATA.
CATEGORIES :
● HIERARCHY_ID● CATEGORY_IDC
AssignedProductCategories
● HierarchyId● Id
This is a component with a table containing the following fields:
● This field contains the hierarchy ID of the product category.
● This field contains the product category ID.
TAGS :
● TAG_ORIGIN● TAG_TYPE● TAG
Not in OData This is a component with a table containing the following fields:
● This field contains the origin of the tag (currently set to SAP_HDB_TA)
● This field contains the tag type as defined in Customizing. Tag types are used in the text analysis of entity types.
● This field contains the tag itself.
144 C U S T O M E RData Management Upload Interfaces 1705
Appendix
Important Disclaimers and Legal Information
Coding SamplesAny software coding and/or code lines / strings ("Code") included in this documentation are only examples and are not intended to be used in a productive system environment. The Code is only intended to better explain and visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors or damages caused by the usage of the Code, unless damages were caused by SAP intentionally or by SAP's gross negligence.
AccessibilityThe information contained in the SAP documentation represents SAP's current view of accessibility criteria as of the date of publication; it is in no way intended to be a binding guideline on how to ensure accessibility of software products. SAP in particular disclaims any liability in relation to this document. This disclaimer, however, does not apply in cases of willful misconduct or gross negligence of SAP. Furthermore, this document does not result in any direct or indirect contractual obligations of SAP.
Gender-Neutral LanguageAs far as possible, SAP documentation is gender neutral. Depending on the context, the reader is addressed directly with "you", or a gender-neutral noun (such as "sales person" or "working days") is used. If when referring to members of both sexes, however, the third-person singular cannot be avoided or a gender-neutral noun does not exist, SAP reserves the right to use the masculine form of the noun and pronoun. This is to ensure that the documentation remains comprehensible.
Internet HyperlinksThe SAP documentation may contain hyperlinks to the Internet. These hyperlinks are intended to serve as a hint about where to find related information. SAP does not warrant the availability and correctness of this related information or the ability of this information to serve a particular purpose. SAP shall not be liable for any damages caused by the use of related information unless damages have been caused by SAP's gross negligence or willful misconduct. All links are categorized for transparency (see: http://help.sap.com/disclaimer).
Data Management Upload Interfaces 1705Important Disclaimers and Legal Information C U S T O M E R 145
go.sap.com/registration/contact.html
© 2017 SAP SE or an SAP affiliate company. All rights reserved.No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an SAP affiliate company. The information contained herein may be changed without prior notice.Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors. National product specifications may vary.These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names mentioned are the trademarks of their respective companies.Please see http://www.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices.