-
Notifications
You must be signed in to change notification settings - Fork 3
AJO Architectural Foundations Menu
| # | Option | Description | Dependencies |
|---|---|---|---|
| 1 | Create profile base | Deploys identity namespaces, XDM field groups, schemas, datasets, merge policies, and audiences | — |
| 2 | Load profile data | Creates HTTP API connections and dataflows, then streams Depeche Mode, Stranger Things, and Decisioning profile data; 60-minute wait after Step 1 is auto-enforced |
Create profile base must have completed |
| 3 | Check profile health | Validates that all profile data is present in the Profile store using per-identity lookups and dataset diagnostics |
Load profile data must have completed; wait at least 15 minutes before running |
| 4 | Create relational base | Creates the customerID identity namespace, relational XDM schemas, primary key / foreign key / version descriptors, and datasets enabled for AJO orchestrated campaigns | Sandbox must have been in Ready state for at least 120 minutes (auto-enforced) |
| 5 | Load relational data | Activates relational datasets (auto-polls up to 15 min), uploads 11 CSV files to the Data Landing Zone (DLZ), and creates 11 dataflows using a one-time run |
Create relational base must have completed |
| 6 | Deploy relational base & data | End-to-end relational deploy combining Steps 4 and 5 in a single ~5-minute operation with the propagation wait handled automatically | Sandbox must have been in Ready state for at least 120 minutes (auto-enforced) |
Tip
Step 6 combines Steps 4 and 5 into a single ~5-minute operation. Use it instead of running Steps 4 and 5 separately.
Terminal output

Total time: approximately 2 hours 23 minutes (profile and relational tracks run in parallel).

Note
The profile track (Steps 1→2→3) sets the critical path: ~2 min (Step 1) + 60 min wait + ~6 min (Step 2) + 15 min wait + health check ≈ ~2h 23min. The relational track (Step 6) completes in ~5 min after the 120-min sandbox wait. All wait times are minimums; actual execution times may vary.
Beyond the standard DEP CLI setup, the AJO Arch Foundations menu requires additional API scopes:
| Field | Description |
|---|---|
SCOPES |
Must include both Experience Platform API and Adobe Journey Optimizer APIs (e.g., cjm.suppression_service.client.delete, cjm.suppression_service.client.all, openid, session, AdobeID, read_organizations, additional_info.projectedProductContext) |
See Getting Started for the full environment file setup instructions.
Warning
Before running this step, ensure the sandbox has been in a "Ready" state for at least 60 minutes.
Takes approximately 2 minutes. Creates:
- Identity namespaces: customerID, planID, productID
- Standard XDM: Field groups, identity/relationship/reference/friendly name descriptors, schemas (enabled for profile)
- Catalog: Standard XDM datasets (enabled for profile)
- Profile Service: Merge Policies, Audiences
Important
After this step completes, wait at least 60 minutes before running Step 2. The CLI automatically enforces this — if you run Step 2 too soon, it will block and tell you how many minutes remain.
Important
Wait at least 60 minutes after completing Step 1 before running this step. The CLI automatically checks dataset timestamps and will block with a message if the wait hasn't elapsed — no manual timing needed.
Takes approximately 6 minutes. Creates a fresh HTTP API base connection and dataflows, waits for flow initialization, then streams:
- Depeche Mode (single profile) — traits and experience events
- Stranger Things profiles — traits only
- Decisioning profiles — traits only
Note
This step is idempotent — re-running it will overwrite existing trait records and skip duplicate events.
Common Errors: If an error occurs you can re-execute the step. It will restream trait data and skip duplicate events.
Important
Wait at least 15 minutes after completing Step 2 before running this step.
Nothing is created. The health check runs per-identity profile lookups and dataset diagnostics against the Profile store, returning a PASS or FAIL result for each identity.

| Error | Description | Corrective Action |
|---|---|---|
✗ Depeche Mode profile events / ✗ Health check failed — wait 15 minutes and retry.
|
Some profile fragments have not finished propagating or were not loaded successfully. The CLI shows which datasets have fewer events than expected. | Option 1: Wait another 15 minutes and re-run Check profile health. Option 2: Re-run Load profile data, wait 15 minutes, then re-run Check profile health. |
Warning
Before running this step, ensure the sandbox has Orchestrated Campaigns available. The CLI requires the sandbox to have been in a "Ready" state for at least 120 minutes — this is enforced automatically at startup.
Takes approximately 2 minutes (includes a 60-second propagation wait for schema indexing). Creates:
- Identity namespaces: customerID
- Relational XDM: Schemas, descriptors (primary keys, foreign keys, version)
- Catalog: Relational XDM datasets (enabled for orchestrated campaigns)
Note
The CLI will prompt: "Enable datasets for AJO relational store?" — confirm to proceed with dataset enablement.
Note
No manual wait required after Step 4. The CLI automatically polls relational dataset status for up to 15 minutes before proceeding to data loading.
Takes approximately 10 minutes. Performs the following:
- Gets DLZ credentials and uploads 11 CSV files to Azure Blob Storage
- Looks up 11 datasets from AEP Catalog
- Clears any existing dataflows for those datasets
- Creates 11 source connections, 11 target connections, 11 mapping sets, and 11 dataflows (one-time execution)
Common Errors: Each API call retries up to 3 times. If all retries fail, cleanup deletes all created source connections, target connections, and dataflows so you can re-attempt. Note: mapping sets cannot be deleted via API and may remain, but this does not affect re-deployment.
Warning
Before running this step, ensure the sandbox has been in a "Ready" state for at least 2 hours. This is automatically enforced at startup — the CLI will block if the sandbox hasn't been ready long enough.
Combines Steps 4 and 5 into a single end-to-end operation with the required 15-minute propagation wait handled automatically.
Takes approximately 5 minutes and runs in two phases:
Phase 1 — Schema Deployment (~2 min)
- Identity namespaces: customerID
- 11 relational schemas with descriptors (primary keys, foreign keys, version)
- 11 datasets enabled for AJO orchestrated campaigns
Important
After schema deployment the CLI polls relational dataset status (up to 15 minutes) before proceeding — this typically resolves in under a minute.
Phase 2 — Data Loading (~3 min)
- Uploads data files to the Data Landing Zone (DLZ)
- Looks up 11 datasets from AEP Catalog
- Clears any existing dataflows for those datasets
- Creates 11 source connections, 11 target connections, 11 mapping sets, and 11 dataflows