Beispiel #1
0
        public async Task <ActionResult <PexAplosApiObject> > GetContact(string sessionId, int aplosContactId, CancellationToken cancellationToken)
        {
            if (!Guid.TryParse(sessionId, out var sessionGuid))
            {
                return(BadRequest());
            }

            var session = await _pexOAuthSessionStorage.GetBySessionGuidAsync(sessionGuid, cancellationToken);

            if (session == null)
            {
                return(Unauthorized());
            }

            var mapping = await _pex2AplosMappingStorage.GetByBusinessAcctIdAsync(session.PEXBusinessAcctId, cancellationToken);

            if (mapping == null)
            {
                return(NotFound());
            }

            var contact = await _aplosIntegrationService.GetAplosContact(mapping, aplosContactId, cancellationToken);

            return(Ok(contact));
        }