Промежуточным решением оказалось использование атрибута.
Необходимо что-бы формат для 
multipleSelect(и прочих) был в формате массива [1,2,3 ... ,7].
При обычной связи передается 
массив вида{
['id' => 1,
'name' => 'Moscow',
...
],
['id' => 2,
'name' => 'Ekb',
...
],
}
 
Поэтому, для формализации я использовал сторонний атрибут "
Cities" к модели "
Promo".
Конечный код...
    //Add extra attribute
    //These attributes will be written to the database, if you do not want this, then do not advertise!
    //protected $attributes = ['cities'];
    //Make it available in the json response
    protected $appends = ['cities'];
    public function getCitiesAttribute()
    {
        return $this->locations->pluck('id');
    }
    public function setCitiesAttribute($value)
    {
        $this->locations()->sync($value);
    }
 
Если, есть другие предложения, я готов выслушать.