B2B namespaces and schemas
This document provides 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
The first step in using the B2B namespace and schema auto-generation utility is to set up your Platform developer console and Postman environment.
- You can download the namespace and schema auto-generation utility collection and environment from this GitHub repository.
- For information on using Platform APIs including details on how to gather values for required headers and read sample API calls, see the guide on getting started with Platform APIs.
- For information on how to generate your credentials for Platform APIs, see the tutorial on authenticating and accessing Experience Platform APIs.
- For information on how to set up Postman for Platform APIs, see the tutorial on setting up developer console and Postman.
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:
CLIENT_SECRET
{ACCESS_TOKEN}
. See the tutorial on authenticating and accessing Experience Platform APIs for information on how to retrieve your {CLIENT_SECRET}
.{CLIENT_SECRET}
JWT_TOKEN
{JWT_TOKEN}
.{JWT_TOKEN}
API_KEY
{API_KEY}
.c8d9a2f5c1e03789bd22e8efdd1bdc1b
ACCESS_TOKEN
{ACCESS_TOKEN}
.Bearer {ACCESS_TOKEN}
META_SCOPE
ent_dataservices_sdk
.ent_dataservices_sdk
CONTAINER_ID
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
PRIVATE_KEY
{PRIVATE_KEY}
TECHNICAL_ACCOUNT_ID
D42AEVJZTTJC6LZADUBVPA15@techacct.adobe.com
IMS
ims-na1.adobelogin.com
.ims-na1.adobelogin.com
IMS_ORG
{ORG_ID}
information.ABCEH0D9KX6A7WA7ATQE0TE@adobeOrg
SANDBOX_NAME
prod
TENANT_ID
b2bcdpproductiontest
PLATFORM_URL
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 Runner interface appears. From here, ensure that all the checkboxes are selected and then select Run Namespaces and Schemas Autogeneration Utility.
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.
b2b_person
CROSS_DEVICE
b2b_account
B2B_ACCOUNT
b2b_opportunity
B2B_OPPORTUNITY
b2b_opportunity_person_relation
B2B_OPPORTUNITY_PERSON
b2b_campaign
B2B_CAMPAIGN
b2b_campaign_member
B2B_CAMPAIGN_MEMBER
b2b_marketing_list
B2B_MARKETING_LIST
b2b_marketing_list_member
B2B_MARKETING_LIST_MEMBER
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.
accountKey.sourceKey
in the base classextSourceSystemAudit.externalKey.sourceKey
in the base classaccountParentKey.sourceKey
in XDM Business Account Details field group- Destination property:
/accountKey/sourceKey
- Type: one-to-one
- Reference schema: B2B Account
- Namespace: B2B Account
- XDM Business Person Details
- XDM Business Person Components
- IdentityMap
- Consent and Preference Details
b2b.personKey.sourceKey
in the XDM Business Person Details Field GroupextSourceSystemAudit.externalKey.sourceKey
of XDM Business Person Details field groupworkEmail.address
of XDM Business Person Details field group
- B2B Person
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
opportunityKey.sourceKey
in the base classextSourceSystemAudit.externalKey.sourceKey
in the base classaccountKey.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
opportunityPersonKey.sourceKey
in the base classextSourceSystemAudit.externalKey.sourceKey
in the base classFirst 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
campaignKey.sourceKey
in the base classextSourceSystemAudit.externalKey.sourceKey
in the base classccampaignMemberKey.sourceKey
in the base classextSourceSystemAudit.externalKey.sourceKey
in the base classFirst 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
marketingListKey.sourceKey
in the base classmarketingListMemberKey.sourceKey
in the base classFirst 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
- 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
personKey.sourceKey
of Person Identifier field groupFirst 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.accountPersonKey.sourceKey
in the base classFirst 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.