November Happy Hour will be moved to Thursday December 5th.

Bartosz Sekula
Nov 5, 2024
  482
(2 votes)

CMS + CMP + Graph integration

We have just released a new package https://nuget.optimizely.com/package/?id=EPiServer.Cms.WelcomeIntegration.Graph which changes the way CMS fetches CMP Asset metadata.

If you use the CMP it means that you also have access to Graph and can fetch metadata from it instead of relying on the CMP API.

There are a few steps required in order to start using the new package https://nuget.optimizely.com/package/?id=EPiServer.Cms.WelcomeIntegration.Graph 

  1. Existing EPiServer.Cms.WelcomeIntegration packages need to be updated to version 1.4.0
  2. EPiServer.Cms.WelcomeIntegration.Graph needs to be installed
  3. GraphClient needs to be configured in appsettings.json in the following way:
    "Optimizely": {
      "ContentGraph": {
        "GatewayAddress": "https://cg.optimizely.com",
        "SingleKey": "SINGLE_KEY_FROM_CMP",
        "QueryPath": "content/v2",
        "UseHmacKey": false
      }
    }
  4. Make sure there is services.AddDAMUi(o => o.Enabled = true) call in Startup.cs
  5. Add services.AddDAMGraphIntegration(); call to Startup.cs
  6. If customer already has a CMS to Graph integration then it means he already has this config in appsettings
    "Optimizely": {
      "ContentGraph": {
        "GatewayAddress": "https://cg.optimizely.com",
        "AppKey": "APPKEY",
        "Secret": "SECRET",
        "QueryPath": "content/v2"
      }
    }
  7. Those AppKey&Secret allow to read&write to a CMS schema. But our new CMP+Graph integration uses different schema which is now available with the CMS keys.

  8. The following config needs to be added to appsettings.json
    "EPiServer": {
      "Cms": {
        "CMPGraph": {
           "SingleKey": "SINGLE_KEY_FROM_CMP"
        }
      }
    }
  9. Or to Startup.cs
    services.Configure<CMPGraphOptions>(options =>
    {
        options.SingleKey = "YOUR_KEY_FROM_CMP";
    });

In case the new package is not installed then it would still work as before, meaning all metadata will be fetched from the CMP API.

Nov 05, 2024

Comments

Andrew Markham
Andrew Markham Nov 6, 2024 05:21 PM

Hi Bartosz,

Can you provide any more details about this package?

I would like to know what interfaces it provides and whether we can use it directly to interact with the CMP/DAM.

I  recently developed my own integration https://github.com/andrewmarkham/Opti-Dam/tree/main/src/OptiDAM, and I would be keen to know whether the new package can replace my approach.

Thanks

Andy

Magnus Rahl
Magnus Rahl Nov 8, 2024 02:11 PM

Andrew, the documentation is here: CMP DAM Asset Picker in CMS

It covers both the user interface picker and the API:s for fetching image metadata (which is what this feature improves).

Please login to comment.
Latest blogs
AsyncHelper can be considered harmful

.NET developers have been in the transition to move from synchronous APIs to asynchronous API. That was boosted a lot by await/async keyword of C#...

Quan Mai | Dec 4, 2024 | Syndicated blog

The search for dictionary key

Recently I helped to chase down a ghost (and you might be surprised to know that I, for most part, spend hours to be a ghostbuster, it could be fun...

Quan Mai | Dec 4, 2024 | Syndicated blog

Shared optimizely cart between non-optimizley front end site

E-commerce ecosystems often demand a seamless shopping experience where users can shop across multiple sites using a single cart. Sharing a cart...

PuneetGarg | Dec 3, 2024

CMS Core 12.22.0 delisted from Nuget feed

We have decided to delist version 12.22.0 of the CMS Core packages from our Nuget feed, following the discovery of a bug that affects rendering of...

Magnus Rahl | Dec 3, 2024