B2B namespaces and schemas

Last update: 2024-10-07
  • Topics:
  • Sources
    View more on this topic
  • Created for:
  • Developer
AVAILABILITY

You must have access to Adobe Real-Time Customer Data Platform B2B Edition for your B2B schemas to qualify in Real-Time Customer Profile.

NOTE

You can use templates in the Adobe Experience Platform UI to expedite your asset creation for B2B and B2C data. For more information, read the guide on using templates in Platform UI.

Read this document for information information on the underlying set up for the namespaces and schemas to be used with B2B sources. This document also provides details around setting up your Postman automation utility required for generating B2B namespaces and schemas.

Set up B2B namespaces and schema auto-generation utility

IMPORTANT

Service Account (JWT) credentials have been deprecated. You must ensure that you migrate your application or integration to the new OAuth Server-to-Server credential before January 27, 2025. Read the following documentation for detailed steps on how to migrate your JWT credential to OAuth Server-to-Server credential.

Refer to the following documentation for prerequisite information on how to set up your Postman environment to support the B2B namespace and schema auto-generation utility.

With a Platform developer console and Postman set up, you can now start applying the appropriate environment values to your Postman environment.

The following table contains example values as well as additional information on populating your Postman environment:

Variable Description Example
CLIENT_SECRET A unique identifier used to generate your {ACCESS_TOKEN}. See the tutorial on authenticating and accessing Experience Platform APIs for information on how to retrieve your {CLIENT_SECRET}. {CLIENT_SECRET}
API_KEY A unique identifier used to authenticate calls to Experience Platform APIs. See the tutorial on authenticating and accessing Experience Platform APIs for information on how to retrieve your {API_KEY}. c8d9a2f5c1e03789bd22e8efdd1bdc1b
ACCESS_TOKEN The authorization token required to complete calls to Experience Platform APIs. See the tutorial on authenticating and accessing Experience Platform APIs for information on how to retrieve your {ACCESS_TOKEN}. Bearer {ACCESS_TOKEN}
META_SCOPE With regards to Marketo, this value is fixed and is alway set to: ent_dataservices_sdk. ent_dataservices_sdk
CONTAINER_ID The global container holds all standard Adobe and Experience Platform partner provided classes, schema field groups, data types, and schemas. With regards to Marketo, this value is fixed and is always set to global. global
TECHNICAL_ACCOUNT_ID A credential used to integrate to Adobe I/O. D42AEVJZTTJC6LZADUBVPA15@techacct.adobe.com
IMS The Identity Management System (IMS) provides the framework for authentication to Adobe services. With regards to Marketo, this value is fixed and is always set to: ims-na1.adobelogin.com. ims-na1.adobelogin.com
IMS_ORG A corporate entity that can own or license products and services and allow access to its members. See the tutorial on setting up developer console and Postman for instructions on how to retrieve your {ORG_ID} information. ABCEH0D9KX6A7WA7ATQE0TE@adobeOrg
SANDBOX_NAME The name of the virtual sandbox partition that you are using. prod
TENANT_ID An ID used to ensure that the resources you create are namespaced properly and are contained within your organization. b2bcdpproductiontest
PLATFORM_URL The URL endpoint that you are making API calls to. This value is fixed and is always set to: http://platform.adobe.io/. http://platform.adobe.io/

Running the scripts

With your Postman collection and environment set up, you can now run the script through the Postman interface.

In the Postman interface, select the root folder of the auto-generator utility and then select Run from the top header.

The root folder of the Namespaces and Schemas generator in the Postman UI. "Runs" is highlighted in the top menu bar.

The Runner interface appears. From here, ensure that all the checkboxes are selected and then select Run Namespaces and Schemas Autogeneration Utility.

The Runner interface of the Postman UI with several requests in the Namespaces and Schemas collection checked and the "Run Namespaces and Schemas" button highlighted on the right side.

A successful request creates the namespaces and schemas required for B2B.

B2B namespaces

Identity namespaces are a component of Identity Service that serve to distinguish the context of an identity. A fully qualified identity includes an identity value and a namespace. Read the namespaces overview for more information.

B2B namespaces are used in the primary identity of the entity.

The following table contains information on the underlying set up for B2B namespaces.

NOTE

Please scroll left/right to view the full contents of the table.

Display Name Identity Symbol Identity Type
B2B Person b2b_person CROSS_DEVICE
B2B Account b2b_account B2B_ACCOUNT
B2B Opportunity b2b_opportunity B2B_OPPORTUNITY
B2B Opportunity Person Relation b2b_opportunity_person_relation B2B_OPPORTUNITY_PERSON
B2B Campaign b2b_campaign B2B_CAMPAIGN
B2B Campaign Member b2b_campaign_member B2B_CAMPAIGN_MEMBER
B2B Marketing List b2b_marketing_list B2B_MARKETING_LIST
B2B Marketing List Member b2b_marketing_list_member B2B_MARKETING_LIST_MEMBER
B2B Account Person Relation b2b_account_person_relation B2B_ACCOUNT_PERSON

B2B schemas

Experience Platform uses schemas to describe the structure of data in a consistent and reusable way. By defining data consistently across systems, it becomes easier to retain meaning and therefore gain value from data.

Before data can be ingested into Platform, a schema must be composed to describe the data’s structure and provide constraints to the type of data that can be contained within each field. Schemas consist of a base class and zero or more schema field groups.

For more information on the schema composition model, including design principles and best practices, see the basics of schema composition.

The following table contains information on the underlying setup of B2B schemas.

NOTE

Please scroll left/right to view the full contents of the table.

Schema name Base class Field groups Profile in Schema Primary identity Primary identity namespace Secondary identity Secondary identity namespace Relationship Notes
B2B Account XDM Business Account XDM Business Account Details Enabled accountKey.sourceKey in the base class B2B Account extSourceSystemAudit.externalKey.sourceKey in the base class B2B Account
  • accountParentKey.sourceKey in XDM Business Account Details field group
  • Destination property: /accountKey/sourceKey
  • Type: one-to-one
  • Reference schema: B2B Account
  • Namespace: B2B Account
B2B Person XDM Individual Profile
  • XDM Business Person Details
  • XDM Business Person Components
  • IdentityMap
  • Consent and Preference Details
Enabled b2b.personKey.sourceKey in the XDM Business Person Details Field Group B2B Person
  1. extSourceSystemAudit.externalKey.sourceKey of XDM Business Person Details field group
  2. workEmail.address of XDM Business Person Details field group
  1. B2B Person
  2. Email
  • personComponents.sourceAccountKey.sourceKey of XDM Business Person Components field group
  • Type: Many-to-one
  • Reference Schema: B2B Account
  • Namespace: B2B Account
  • Destination property: accountKey.sourceKey
  • Relationship name from current schema: Account
  • Relationship name from reference schema: People
B2B Opportunity XDM Business Opportunity XDM Business Opportunity Details Enabled opportunityKey.sourceKey in the base class B2B Opportunity extSourceSystemAudit.externalKey.sourceKey in the base class B2B Opportunity
  • accountKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Account
  • Namespace: B2B Account
  • Destination property: accountKey.sourceKey
  • Relationship name from current schema: Account
  • Relationship name from reference schema: Opportunities
B2B Opportunity Person Relation XDM Business Opportunity Person Relation None Enabled opportunityPersonKey.sourceKey in the base class B2B Opportunity Person Relation extSourceSystemAudit.externalKey.sourceKey in the base class B2B Opportunity Person Relation First relationship
  • personKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Person
  • Namespace: B2B Person
  • Destination property: b2b.personKey.sourceKey
  • Relationship name from current schema: Person
  • Relationship name from reference schema: Opportunities
Second relationship
  • opportunityKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Opportunity
  • Namespace: B2B Opportunity
  • Destination property: opportunityKey.sourceKey
  • Relationship name from current schema: Opportunity
  • Relationship name from reference schema: People
B2B Campaign XDM Business Campaign XDM Business Campaign Details Enabled campaignKey.sourceKey in the base class B2B Campaign extSourceSystemAudit.externalKey.sourceKey in the base class B2B Campaign
B2B Campaign Member XDM Business Campaign Members XDM Business Campaign Member Details Enabled ccampaignMemberKey.sourceKey in the base class B2B Campaign Member extSourceSystemAudit.externalKey.sourceKey in the base class B2B Campaign Member First relationship
  • personKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Person
  • Namespace: B2B Person
  • Destination property: b2b.personKey.sourceKey
  • Relationship name from current schema: Person
  • Relationship name from reference schema: Campaigns
Second relationship
  • campaignKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Campaign
  • Namespace: B2B Campaign
  • Destination property: campaignKey.sourceKey
  • Relationship name from current schema: Campaign
  • Relationship name from reference schema: People
B2B Marketing List XDM Business Marketing List None Enabled marketingListKey.sourceKey in the base class B2B Marketing List None None None Static List is not synced from Salesforce and therefore does not have a secondary identity.
B2B Marketing List Member XDM Business Marketing List Members None Enabled marketingListMemberKey.sourceKey in the base class B2B Marketing List Member None None First relationship
  • PersonKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Person
  • Namespace: B2B Person
  • Destination property: b2b.personKey.sourceKey
  • Relationship name from current schema: Person
  • Relationship name from reference schema: Marketing Lists
Second relationship
  • marketingListKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Marketing List
  • Namespace: B2B Marketing List
  • Destination property: marketingListKey.sourceKey
  • Relationship name from current schema: Marketing List
  • Relationship name from reference schema: People
Static list member is not synced from Salesforce and therefore does not have a secondary identity.
B2B Activity XDM ExperienceEvent
  • Visit WebPage
  • New Lead
  • Convert Lead
  • Add To List
  • Remove From List
  • Add To Opportunity
  • Remove From Opportunity
  • Form Filled Out
  • Link Clicks
  • Email Delivered
  • Email Opened
  • Email Clicked
  • Email Bounced
  • Email Bounced Soft
  • Email Unsubscribed
  • Score Changed
  • Opportunity Updated
  • Status in Campaign Progression Changed
  • Person Identifier
  • Marketo Web URL
  • Interesting Moment
  • Call Webhook
  • Change Campaign Cadence
  • Revenue Stage Changed
  • Merge Leads
  • Email Sent
  • Change Campaign Stream
  • Add to Campaign
Enabled personKey.sourceKey of Person Identifier field group B2B Person None None First relationship
  • listOperations.listKey.sourceKey field
  • Type: one-to-one
  • Reference Schema: B2B Marketing List
  • Namespace: B2B Marketing List
Second relationship
  • opportunityEvent.opportunityKey.sourceKey field
  • Type: one-to-one
  • Reference Schema: B2B Opportunity
  • Namespace: B2B Opportunity
Third relationship
  • leadOperation.campaignProgression.campaignKey.sourceKey field
  • Type: one-to-one
  • Reference Schema: B2B Campaign
  • Namespace: B2B Campaign
ExperienceEvent is different from entities. The identity of experience event is the person who did the activity.
B2B Account Person Relation XDM Business Account Person Relation Identity Map Enabled accountPersonKey.sourceKey in the base class B2B Account Person Relation None None First relationship
  • personKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Person
  • Namespace: B2B Person
  • Destination property: b2b.personKey.SourceKey
  • Relationship name from current schema: People
  • Relationship name from reference schema: Account
Second relationship
  • accountKey.sourceKey in the base class
  • Type: Many-to-one
  • Reference Schema: B2B Account
  • Namespace: B2B Account
  • Destination property: accountKey.sourceKey
  • Relationship name from current schema: Account
  • Relationship name from reference schema: People

Next steps

To learn how to connect your Marketo data to Platform, see the tutorial on creating a Marketo source connector in the UI.

On this page