def update_campaign_name(self, fb_campaign_id, new_campaign_name, logger): """ Update fb campaign""" try: campaign = Campaign(str(fb_campaign_id)) # You may read campaign field first, not necessary campaign.remote_read(fields=[ Campaign.Field.id, Campaign.Field.status, ]) if campaign[Campaign.Field.status] == 'ARCHIVED': logger.error('cpid[%d] in ARCHIVED status, no update' % fb_campaign_id) return campaign.update({ Campaign.Field.name: new_campaign_name, }) campaign.remote_update() except Exception as e: logger.exception(e)
# Facebook. # As with any software that integrates with the Facebook platform, your use # of this software is subject to the Facebook Developer Principles and # Policies [http://developers.facebook.com/policy/]. This copyright notice # shall be included in all copies or substantial portions of the software. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. from examples.docs import fixtures campaign_id = fixtures.create_campaign().get_id() # _DOC open [ADCAMPAIGN_UPDATE] # _DOC vars [campaign_id] from facebookads.objects import Campaign campaign = Campaign(campaign_id) campaign[Campaign.Field.name] = 'New Name' campaign.remote_update() # _DOC close [ADCAMPAIGN_UPDATE] campaign.remote_delete()