protected override void Execute(CodeActivityContext context) { ITracingService tracing = context.GetExtension <ITracingService>(); IWorkflowContext workflowContext = context.GetExtension <IWorkflowContext>(); IOrganizationService service = context.GetExtension <IOrganizationServiceFactory>().CreateOrganizationService(workflowContext.InitiatingUserId); FuncLibrary aux = new FuncLibrary(); find_marketingautomationintegration sendGridAccount = aux.GetMailchimpInfo(service); Apihelper.InitializeClient(sendGridAccount.find_SendGridIntegration); ApiRoot apiRoot = new ApiRoot(); List list = service.Retrieve(MarketingList.Get(context).LogicalName, MarketingList.Get(context).Id, new ColumnSet("find_sendgridid")).ToEntity <List>(); Campaign campaign = service.Retrieve(Campaign.Get(context).LogicalName, Campaign.Get(context).Id, new ColumnSet("name")).ToEntity <Campaign>(); EntityReference memberReference = new EntityReference(MemberType.Get(context), new Guid(MemberId.Get(context))); find_metric metric = GetMetricByCampaign(service, campaign); if (HasMetricDetailsToMember(service, metric, memberReference)) { return; } CreateMetricDetails(service, metric, memberReference); SyncMemberTypeToSendGrid(service, memberReference, list, apiRoot, tracing); }