in facebook_business/adobjects/page.py [0:0]
def create_copyright_manual_claim(self, fields=None, params=None, batch=None, success=None, failure=None, pending=False):
from facebook_business.utils import api_utils
if batch is None and (success is not None or failure is not None):
api_utils.warning('`success` and `failure` callback only work for batch call.')
param_types = {
'action': 'action_enum',
'action_reason': 'action_reason_enum',
'countries': 'Object',
'match_content_type': 'match_content_type_enum',
'matched_asset_id': 'string',
'reference_asset_id': 'string',
}
enums = {
'action_enum': [
'BLOCK',
'CLAIM_AD_EARNINGS',
'MANUAL_REVIEW',
'MONITOR',
'REQUEST_TAKEDOWN',
],
'action_reason_enum': [
'ARTICLE_17_PREFLAGGING',
'ARTIST_OBJECTION',
'OBJECTIONABLE_CONTENT',
'PREMIUM_MUSIC_VIDEO',
'PRERELEASE_CONTENT',
'PRODUCT_PARAMETERS',
'RESTRICTED_CONTENT',
'UNAUTHORIZED_COMMERCIAL_USE',
],
'match_content_type_enum': [
'AUDIO_ONLY',
'VIDEO_AND_AUDIO',
'VIDEO_ONLY',
],
}
request = FacebookRequest(
node_id=self['id'],
method='POST',
endpoint='/copyright_manual_claims',
api=self._api,
param_checker=TypeChecker(param_types, enums),
target_class=AbstractCrudObject,
api_type='EDGE',
response_parser=ObjectParser(target_class=AbstractCrudObject, api=self._api),
)
request.add_params(params)
request.add_fields(fields)
if batch is not None:
request.add_to_batch(batch, success=success, failure=failure)
return request
elif pending:
return request
else:
self.assure_call()
return request.execute()