1
votes

I tried - POST https://api.linkedin.com/v2/dmpSegments

but got error -

{"serviceErrorCode":100,"message":"Not enough permissions to access: POST /dmpSegments","status":403}

My app does have permission of rw_ads. I can successfully call some ads api endpoints, e.g. - POST https://api.linkedin.com/v2/adSegmentsV2 - POST https://api.linkedin.com/v2/adCampaignGroupsV2 - POST https://api.linkedin.com/v2/adCampaignsV2 - POST https://api.linkedin.com/v2/adCreativesV2

public string CreateDmpSegment(string token, DmpSegmentsCreateRequest dmpSegmentsCreateRequest, ILogMessages messages)
{
  NameValueCollection data = System.Web.HttpUtility.ParseQueryString("");
  string url = $@"{LinkedInApiUrl}dmpSegments";

  Tuple<NameValueCollection, dynamic> results = RestHelper.JsonApiPOST(url, token, dmpSegmentsCreateRequest);
  if (string.Equals(results.Item1["valid"], true.ToString(), StringComparison.InvariantCultureIgnoreCase))
  {
    return results.Item2["X-LinkedIn-Id"];
  }
  UpdateErrors(LinkedInErrors.CreateDmpSegmentError, results, messages);
  return null;
}

expected return results.Item2["X-LinkedIn-Id"];

but got error -

{"serviceErrorCode":100,"message":"Not enough permissions to access: POST /dmpSegments","status":403}

1

1 Answers

1
votes

From what I read here you must have the access token generated with rw_dmp_segments scope. The rw_ads scope is not enough.

To be able to request access tokens with rw_dmp_segments scope, you have to obtain a further permission from LinkedIn as written here: "..you must initiate a Technical Sign Off request by contacting your LinkedIn POC on the Business Development team."

Hope this helps.