def bulk_create_content_summary(user, org): """ bulk upsert summary metrics for an organization's content items. """ req_data = request_data() # check for valid format. if not isinstance(req_data, list): raise RequestError( "Bulk endpoints require a list of json objects." ) # check for content_item_id. if not 'content_item_id' in req_data[0].keys(): raise RequestError( 'You must pass in a content_item_id with each record.') job_id = load.content_summary( req_data, org_id=org.id, metrics_lookup=org.content_summary_metrics, content_item_ids=org.content_item_ids, commit=False) ret = url_for_job_status(apikey=user.apikey, job_id=job_id, queue='bulk') return jsonify(ret, status=202)
def content_metrics_summary(user, org, content_item_id): """ upsert summary metrics for a content_item. """ c = ContentItem.query\ .filter_by(id=content_item_id)\ .filter_by(org_id=org.id)\ .first() if not c: raise NotFoundError( 'A ContentItem with ID {} does not exist' .format(content_item_id)) req_data = request_data() # check for valid format. if not isinstance(req_data, dict): raise RequestError( "Non-bulk endpoints require a single json object." ) # insert content item id req_data['content_item_id'] = content_item_id ret = load.content_summary( req_data, org_id=org.id, metrics_lookup=org.content_summary_metrics, content_item_ids=org.content_item_ids, commit=True ) return jsonify(ret)
def content_metrics_summary(user, org, content_item_id): """ upsert summary metrics for a content_item. """ c = ContentItem.query\ .filter_by(id=content_item_id)\ .filter_by(org_id=org.id)\ .first() if not c: raise NotFoundError( 'A ContentItem with ID {} does not exist'.format(content_item_id)) req_data = request_data() # check for valid format. if not isinstance(req_data, dict): raise RequestError("Non-bulk endpoints require a single json object.") # insert content item id req_data['content_item_id'] = content_item_id ret = load.content_summary(req_data, org_id=org.id, metrics_lookup=org.content_summary_metrics, content_item_ids=org.content_item_ids, commit=True) return jsonify(ret)
def bulk_create_content_summary(user, org): """ bulk upsert summary metrics for an organization's content items. """ req_data = request_data() # check for valid format. if not isinstance(req_data, list): raise RequestError("Bulk endpoints require a list of json objects.") # check for content_item_id. if not 'content_item_id' in req_data[0].keys(): raise RequestError( 'You must pass in a content_item_id with each record.') job_id = load.content_summary(req_data, org_id=org.id, metrics_lookup=org.content_summary_metrics, content_item_ids=org.content_item_ids, commit=False) ret = url_for_job_status(apikey=user.apikey, job_id=job_id, queue='bulk') return jsonify(ret, status=202)