Como retornar dados da promessa

Preciso tirar o response.data da promessa para que ele possa ser retornado pela função anexa. Eu sei que provavelmente não posso fazê-lo da maneira que codifiquei por causa do escopo javascript normal. Existe alguma maneira de fazer isso?

O console.log em # 1 produz os dados corretos. console.log # 2 sempre produz 'a';

function addSiteParentId(nodeId) {   
    var theParentId = 'a';
    var parentId = relationsManagerResource.GetParentId(nodeId)
                        .then(function(response){                               
                            theParentId = response.data;
                            console.log(theParentId);  // #1
                        });
    console.log(theParentId);  // #2
    return theParentId;
}

Qualquer ponteiro seria apreciado.

questionAnswers(3)

yourAnswerToTheQuestion