def post_brief_create_upload()

in genai-for-marketing/backend_apis/app/main.py [0:0]


def post_brief_create_upload(data: BriefCreateRequest) -> BriefCreateResponse:
    """Create a creative brief document and upload to Google Drive
    Parameters:
        campaign_name: str
        business_name: str
        brief_scenario: str
        brand_statement: str
        primary_message: str
        comm_channels: str
    Returns:
        new_folder_id: str
        doc_id: str
    """
    try:
        print("Creating document Assets..")
        new_folder_id = utils_workspace.create_folder_in_folder(
            credentials = CREDENTIALS,
            folder_name=f"Marketing_Assets_{int(time.time())}",
            parent_folder_id=drive_folder_id)
        
        utils_workspace.set_permission(
            credentials = CREDENTIALS,
            file_id=new_folder_id,
            domain=domain)

        doc_id = utils_workspace.copy_drive_file(
            credentials = CREDENTIALS,
            drive_file_id=doc_template_id,
            parentFolderId=new_folder_id,
            copy_title=f"GenAI Marketing Brief")

        utils_workspace.update_doc(
            credentials = CREDENTIALS,
            document_id=doc_id,
            campaign_name=data.campaign_name,
            business_name=data.business_name,
            scenario=data.brief_scenario,
            brand_statement=data.brand_statement,
            primary_msg=data.primary_message,
            comms_channel=data.comm_channels)
    except Exception as e:
        print(e)
        raise HTTPException(
            status_code=400, 
            detail="Something went wrong. Please try again."+str(e))

    return BriefCreateResponse(
        new_folder_id=new_folder_id,
        doc_id=doc_id
    )