| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,131 +1,132 @@ | |||
| 1 | - import os | ||
| 2 | - | ||
| 3 | - from flask import Flask, session, current_app | ||
| 4 | - from flask_wtf.csrf import CSRFProtect | ||
| 5 | - | ||
| 6 | - from .ds_config import DS_CONFIG | ||
| 7 | - from .eSignature import views as esignature_views | ||
| 8 | - from .docusign.views import ds | ||
| 9 | - from .api_type import EXAMPLES_API_TYPE | ||
| 10 | - from .rooms import views as rooms_views | ||
| 11 | - from .click import views as click_views | ||
| 12 | - from .monitor import views as monitor_views | ||
| 13 | - from .admin import views as admin_views | ||
| 14 | - from .connect import views as connect_views | ||
| 15 | - from .maestro import views as maestro_views | ||
| 16 | - from .webforms import views as webforms_views | ||
| 17 | - from .views import core | ||
| 18 | - | ||
| 19 | - session_path = "/tmp/python_recipe_sessions" | ||
| 20 | - app = Flask(__name__) | ||
| 21 | - | ||
| 22 | - app.config.from_pyfile("config.py") | ||
| 23 | - | ||
| 24 | - # See https://flask-wtf.readthedocs.io/en/stable/csrf.html | ||
| 25 | - csrf = CSRFProtect(app) | ||
| 26 | - | ||
| 27 | - # Set whether this is a quickstart in config | ||
| 28 | - #app.config["quickstart"] = DS_CONFIG["quickstart"] | ||
| 29 | - | ||
| 30 | - # Set whether user has logged in | ||
| 31 | - #app.config["isLoggedIn"] = False | ||
| 32 | - | ||
| 33 | - # Register home page | ||
| 34 | - app.register_blueprint(core) | ||
| 35 | - | ||
| 36 | - # Register OAuth | ||
| 37 | - app.register_blueprint(ds) | ||
| 38 | - # Register examples | ||
| 39 | - | ||
| 40 | - app.register_blueprint(rooms_views.reg001) | ||
| 41 | - app.register_blueprint(rooms_views.reg002) | ||
| 42 | - app.register_blueprint(rooms_views.reg003) | ||
| 43 | - app.register_blueprint(rooms_views.reg004) | ||
| 44 | - app.register_blueprint(rooms_views.reg005) | ||
| 45 | - app.register_blueprint(rooms_views.reg006) | ||
| 46 | - app.register_blueprint(rooms_views.reg007) | ||
| 47 | - app.register_blueprint(rooms_views.reg008) | ||
| 48 | - app.register_blueprint(rooms_views.reg009) | ||
| 49 | - | ||
| 50 | - app.register_blueprint(monitor_views.meg001) | ||
| 51 | - | ||
| 52 | - app.register_blueprint(admin_views.aeg001) | ||
| 53 | - app.register_blueprint(admin_views.aeg002) | ||
| 54 | - app.register_blueprint(admin_views.aeg003) | ||
| 55 | - app.register_blueprint(admin_views.aeg004) | ||
| 56 | - app.register_blueprint(admin_views.aeg005) | ||
| 57 | - app.register_blueprint(admin_views.aeg006) | ||
| 58 | - app.register_blueprint(admin_views.aeg007) | ||
| 59 | - app.register_blueprint(admin_views.aeg008) | ||
| 60 | - app.register_blueprint(admin_views.aeg009) | ||
| 61 | - app.register_blueprint(admin_views.aeg010) | ||
| 62 | - app.register_blueprint(admin_views.aeg011) | ||
| 63 | - app.register_blueprint(admin_views.aeg012) | ||
| 64 | - | ||
| 65 | - app.register_blueprint(click_views.ceg001) | ||
| 66 | - app.register_blueprint(click_views.ceg002) | ||
| 67 | - app.register_blueprint(click_views.ceg003) | ||
| 68 | - app.register_blueprint(click_views.ceg004) | ||
| 69 | - app.register_blueprint(click_views.ceg005) | ||
| 70 | - app.register_blueprint(click_views.ceg006) | ||
| 71 | - | ||
| 72 | - app.register_blueprint(esignature_views.eg001) | ||
| 73 | - app.register_blueprint(esignature_views.eg002) | ||
| 74 | - app.register_blueprint(esignature_views.eg003) | ||
| 75 | - app.register_blueprint(esignature_views.eg004) | ||
| 76 | - app.register_blueprint(esignature_views.eg005) | ||
| 77 | - app.register_blueprint(esignature_views.eg006) | ||
| 78 | - app.register_blueprint(esignature_views.eg007) | ||
| 79 | - app.register_blueprint(esignature_views.eg008) | ||
| 80 | - app.register_blueprint(esignature_views.eg009) | ||
| 81 | - app.register_blueprint(esignature_views.eg010) | ||
| 82 | - app.register_blueprint(esignature_views.eg011) | ||
| 83 | - app.register_blueprint(esignature_views.eg012) | ||
| 84 | - app.register_blueprint(esignature_views.eg013) | ||
| 85 | - app.register_blueprint(esignature_views.eg014) | ||
| 86 | - app.register_blueprint(esignature_views.eg015) | ||
| 87 | - app.register_blueprint(esignature_views.eg016) | ||
| 88 | - app.register_blueprint(esignature_views.eg017) | ||
| 89 | - app.register_blueprint(esignature_views.eg018) | ||
| 90 | - app.register_blueprint(esignature_views.eg019) | ||
| 91 | - app.register_blueprint(esignature_views.eg020) | ||
| 92 | - app.register_blueprint(esignature_views.eg022) | ||
| 93 | - app.register_blueprint(esignature_views.eg023) | ||
| 94 | - app.register_blueprint(esignature_views.eg024) | ||
| 95 | - app.register_blueprint(esignature_views.eg025) | ||
| 96 | - app.register_blueprint(esignature_views.eg026) | ||
| 97 | - app.register_blueprint(esignature_views.eg027) | ||
| 98 | - app.register_blueprint(esignature_views.eg028) | ||
| 99 | - app.register_blueprint(esignature_views.eg029) | ||
| 100 | - app.register_blueprint(esignature_views.eg030) | ||
| 101 | - app.register_blueprint(esignature_views.eg031) | ||
| 102 | - app.register_blueprint(esignature_views.eg032) | ||
| 103 | - app.register_blueprint(esignature_views.eg033) | ||
| 104 | - app.register_blueprint(esignature_views.eg034) | ||
| 105 | - app.register_blueprint(esignature_views.eg035) | ||
| 106 | - app.register_blueprint(esignature_views.eg036) | ||
| 107 | - app.register_blueprint(esignature_views.eg037) | ||
| 108 | - app.register_blueprint(esignature_views.eg038) | ||
| 109 | - app.register_blueprint(esignature_views.eg039) | ||
| 110 | - app.register_blueprint(esignature_views.eg040) | ||
| 111 | - app.register_blueprint(esignature_views.eg041) | ||
| 112 | - app.register_blueprint(esignature_views.eg042) | ||
| 113 | - app.register_blueprint(esignature_views.eg043) | ||
| 114 | - app.register_blueprint(esignature_views.eg044) | ||
| 115 | - | ||
| 116 | - app.register_blueprint(connect_views.cneg001) | ||
| 117 | - | ||
| 118 | - app.register_blueprint(maestro_views.mseg001) | ||
| 119 | - app.register_blueprint(maestro_views.mseg002) | ||
| 120 | - app.register_blueprint(maestro_views.mseg003) | ||
| 121 | - | ||
| 122 | - app.register_blueprint(webforms_views.weg001) | ||
| 123 | - | ||
| 124 | - if "DYNO" in os.environ: # On Heroku? | ||
| 125 | - import logging | ||
| 126 | - | ||
| 127 | - stream_handler = logging.StreamHandler() | ||
| 128 | - app.logger.addHandler(stream_handler) | ||
| 129 | - app.logger.setLevel(logging.INFO) | ||
| 130 | - app.logger.info("Recipe example startup") | ||
| 131 | - app.config.update(dict(PREFERRED_URL_SCHEME="https")) | ||
| 1 | + import os | ||
| 2 | + | ||
| 3 | + from flask import Flask, session, current_app | ||
| 4 | + from flask_wtf.csrf import CSRFProtect | ||
| 5 | + | ||
| 6 | + from .ds_config import DS_CONFIG | ||
| 7 | + from .eSignature import views as esignature_views | ||
| 8 | + from .docusign.views import ds | ||
| 9 | + from .api_type import EXAMPLES_API_TYPE | ||
| 10 | + from .rooms import views as rooms_views | ||
| 11 | + from .click import views as click_views | ||
| 12 | + from .monitor import views as monitor_views | ||
| 13 | + from .admin import views as admin_views | ||
| 14 | + from .connect import views as connect_views | ||
| 15 | + from .maestro import views as maestro_views | ||
| 16 | + from .webforms import views as webforms_views | ||
| 17 | + from .views import core | ||
| 18 | + | ||
| 19 | + session_path = "/tmp/python_recipe_sessions" | ||
| 20 | + app = Flask(__name__) | ||
| 21 | + | ||
| 22 | + app.config.from_pyfile("config.py") | ||
| 23 | + | ||
| 24 | + # See https://flask-wtf.readthedocs.io/en/stable/csrf.html | ||
| 25 | + csrf = CSRFProtect(app) | ||
| 26 | + | ||
| 27 | + # Set whether this is a quickstart in config | ||
| 28 | + #app.config["quickstart"] = DS_CONFIG["quickstart"] | ||
| 29 | + | ||
| 30 | + # Set whether user has logged in | ||
| 31 | + #app.config["isLoggedIn"] = False | ||
| 32 | + | ||
| 33 | + # Register home page | ||
| 34 | + app.register_blueprint(core) | ||
| 35 | + | ||
| 36 | + # Register OAuth | ||
| 37 | + app.register_blueprint(ds) | ||
| 38 | + # Register examples | ||
| 39 | + | ||
| 40 | + app.register_blueprint(rooms_views.reg001) | ||
| 41 | + app.register_blueprint(rooms_views.reg002) | ||
| 42 | + app.register_blueprint(rooms_views.reg003) | ||
| 43 | + app.register_blueprint(rooms_views.reg004) | ||
| 44 | + app.register_blueprint(rooms_views.reg005) | ||
| 45 | + app.register_blueprint(rooms_views.reg006) | ||
| 46 | + app.register_blueprint(rooms_views.reg007) | ||
| 47 | + app.register_blueprint(rooms_views.reg008) | ||
| 48 | + app.register_blueprint(rooms_views.reg009) | ||
| 49 | + | ||
| 50 | + app.register_blueprint(monitor_views.meg001) | ||
| 51 | + | ||
| 52 | + app.register_blueprint(admin_views.aeg001) | ||
| 53 | + app.register_blueprint(admin_views.aeg002) | ||
| 54 | + app.register_blueprint(admin_views.aeg003) | ||
| 55 | + app.register_blueprint(admin_views.aeg004) | ||
| 56 | + app.register_blueprint(admin_views.aeg005) | ||
| 57 | + app.register_blueprint(admin_views.aeg006) | ||
| 58 | + app.register_blueprint(admin_views.aeg007) | ||
| 59 | + app.register_blueprint(admin_views.aeg008) | ||
| 60 | + app.register_blueprint(admin_views.aeg009) | ||
| 61 | + app.register_blueprint(admin_views.aeg010) | ||
| 62 | + app.register_blueprint(admin_views.aeg011) | ||
| 63 | + app.register_blueprint(admin_views.aeg012) | ||
| 64 | + app.register_blueprint(admin_views.aeg013) | ||
| 65 | + | ||
| 66 | + app.register_blueprint(click_views.ceg001) | ||
| 67 | + app.register_blueprint(click_views.ceg002) | ||
| 68 | + app.register_blueprint(click_views.ceg003) | ||
| 69 | + app.register_blueprint(click_views.ceg004) | ||
| 70 | + app.register_blueprint(click_views.ceg005) | ||
| 71 | + app.register_blueprint(click_views.ceg006) | ||
| 72 | + | ||
| 73 | + app.register_blueprint(esignature_views.eg001) | ||
| 74 | + app.register_blueprint(esignature_views.eg002) | ||
| 75 | + app.register_blueprint(esignature_views.eg003) | ||
| 76 | + app.register_blueprint(esignature_views.eg004) | ||
| 77 | + app.register_blueprint(esignature_views.eg005) | ||
| 78 | + app.register_blueprint(esignature_views.eg006) | ||
| 79 | + app.register_blueprint(esignature_views.eg007) | ||
| 80 | + app.register_blueprint(esignature_views.eg008) | ||
| 81 | + app.register_blueprint(esignature_views.eg009) | ||
| 82 | + app.register_blueprint(esignature_views.eg010) | ||
| 83 | + app.register_blueprint(esignature_views.eg011) | ||
| 84 | + app.register_blueprint(esignature_views.eg012) | ||
| 85 | + app.register_blueprint(esignature_views.eg013) | ||
| 86 | + app.register_blueprint(esignature_views.eg014) | ||
| 87 | + app.register_blueprint(esignature_views.eg015) | ||
| 88 | + app.register_blueprint(esignature_views.eg016) | ||
| 89 | + app.register_blueprint(esignature_views.eg017) | ||
| 90 | + app.register_blueprint(esignature_views.eg018) | ||
| 91 | + app.register_blueprint(esignature_views.eg019) | ||
| 92 | + app.register_blueprint(esignature_views.eg020) | ||
| 93 | + app.register_blueprint(esignature_views.eg022) | ||
| 94 | + app.register_blueprint(esignature_views.eg023) | ||
| 95 | + app.register_blueprint(esignature_views.eg024) | ||
| 96 | + app.register_blueprint(esignature_views.eg025) | ||
| 97 | + app.register_blueprint(esignature_views.eg026) | ||
| 98 | + app.register_blueprint(esignature_views.eg027) | ||
| 99 | + app.register_blueprint(esignature_views.eg028) | ||
| 100 | + app.register_blueprint(esignature_views.eg029) | ||
| 101 | + app.register_blueprint(esignature_views.eg030) | ||
| 102 | + app.register_blueprint(esignature_views.eg031) | ||
| 103 | + app.register_blueprint(esignature_views.eg032) | ||
| 104 | + app.register_blueprint(esignature_views.eg033) | ||
| 105 | + app.register_blueprint(esignature_views.eg034) | ||
| 106 | + app.register_blueprint(esignature_views.eg035) | ||
| 107 | + app.register_blueprint(esignature_views.eg036) | ||
| 108 | + app.register_blueprint(esignature_views.eg037) | ||
| 109 | + app.register_blueprint(esignature_views.eg038) | ||
| 110 | + app.register_blueprint(esignature_views.eg039) | ||
| 111 | + app.register_blueprint(esignature_views.eg040) | ||
| 112 | + app.register_blueprint(esignature_views.eg041) | ||
| 113 | + app.register_blueprint(esignature_views.eg042) | ||
| 114 | + app.register_blueprint(esignature_views.eg043) | ||
| 115 | + app.register_blueprint(esignature_views.eg044) | ||
| 116 | + | ||
| 117 | + app.register_blueprint(connect_views.cneg001) | ||
| 118 | + | ||
| 119 | + app.register_blueprint(maestro_views.mseg001) | ||
| 120 | + app.register_blueprint(maestro_views.mseg002) | ||
| 121 | + app.register_blueprint(maestro_views.mseg003) | ||
| 122 | + | ||
| 123 | + app.register_blueprint(webforms_views.weg001) | ||
| 124 | + | ||
| 125 | + if "DYNO" in os.environ: # On Heroku? | ||
| 126 | + import logging | ||
| 127 | + | ||
| 128 | + stream_handler = logging.StreamHandler() | ||
| 129 | + app.logger.addHandler(stream_handler) | ||
| 130 | + app.logger.setLevel(logging.INFO) | ||
| 131 | + app.logger.info("Recipe example startup") | ||
| 132 | + app.config.update(dict(PREFERRED_URL_SCHEME="https")) | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -0,0 +1,89 @@ | |||
| 1 | + from docusign_admin import ApiClient, ProvisionAssetGroupApi, SubAccountCreateRequest, \ | ||
| 2 | + SubAccountCreateRequestSubAccountCreationSubscription, \ | ||
| 3 | + SubAccountCreateRequestSubAccountCreationTargetAccountDetails, \ | ||
| 4 | + SubAccountCreateRequestSubAccountCreationTargetAccountAdmin | ||
| 5 | + from flask import session, request | ||
| 6 | + | ||
| 7 | + from ..utils import get_organization_id | ||
| 8 | + from ...ds_config import DS_CONFIG | ||
| 9 | + | ||
| 10 | + | ||
| 11 | + class Eg013CreateAccountController: | ||
| 12 | + @staticmethod | ||
| 13 | + def get_args(): | ||
| 14 | + """Get required session and request arguments""" | ||
| 15 | + organization_id = get_organization_id() | ||
| 16 | + | ||
| 17 | + return { | ||
| 18 | + "access_token": session["ds_access_token"], # Represents your {ACCESS_TOKEN} | ||
| 19 | + "organization_id": organization_id, | ||
| 20 | + "base_path": DS_CONFIG["admin_api_client_host"], | ||
| 21 | + "email": request.form.get("email"), | ||
| 22 | + "first_name": request.form.get("first_name"), | ||
| 23 | + "last_name": request.form.get("last_name"), | ||
| 24 | + "subscription_id": session.get("subscription_id"), | ||
| 25 | + "plan_id": session.get("plan_id"), | ||
| 26 | + } | ||
| 27 | + | ||
| 28 | + @staticmethod | ||
| 29 | + def worker(args): | ||
| 30 | + """ | ||
| 31 | + 1. Create an API client with headers | ||
| 32 | + 2. Get the list of eligible accounts | ||
| 33 | + 3. Construct the request body | ||
| 34 | + 4. Create the account | ||
| 35 | + """ | ||
| 36 | + | ||
| 37 | + access_token = args["access_token"] | ||
| 38 | + | ||
| 39 | + # Create an API client with headers | ||
| 40 | + #ds-snippet-start:Admin13Step2 | ||
| 41 | + api_client = ApiClient(host=args["base_path"]) | ||
| 42 | + api_client.set_default_header( | ||
| 43 | + header_name="Authorization", | ||
| 44 | + header_value=f"Bearer {access_token}" | ||
| 45 | + ) | ||
| 46 | + #ds-snippet-end:Admin13Step2 | ||
| 47 | + | ||
| 48 | + #ds-snippet-start:Admin13Step4 | ||
| 49 | + account_data = SubAccountCreateRequest( | ||
| 50 | + subscription_details=SubAccountCreateRequestSubAccountCreationSubscription( | ||
| 51 | + id=args["subscription_id"], | ||
| 52 | + plan_id=args["plan_id"], | ||
| 53 | + modules=[] | ||
| 54 | + ), | ||
| 55 | + target_account=SubAccountCreateRequestSubAccountCreationTargetAccountDetails( | ||
| 56 | + name="CreatedThroughAPI", | ||
| 57 | + country_code="US", | ||
| 58 | + admin=SubAccountCreateRequestSubAccountCreationTargetAccountAdmin( | ||
| 59 | + email=args["email"], | ||
| 60 | + first_name=args["first_name"], | ||
| 61 | + last_name=args["last_name"], | ||
| 62 | + locale="en" | ||
| 63 | + ) | ||
| 64 | + ) | ||
| 65 | + ) | ||
| 66 | + #ds-snippet-end:Admin13Step4 | ||
| 67 | + | ||
| 68 | + #ds-snippet-start:Admin13Step5 | ||
| 69 | + asset_group_api = ProvisionAssetGroupApi(api_client=api_client) | ||
| 70 | + results = asset_group_api.create_asset_group_account(args["organization_id"], account_data) | ||
| 71 | + #ds-snippet-end:Admin13Step5 | ||
| 72 | + | ||
| 73 | + return results | ||
| 74 | + | ||
| 75 | + @staticmethod | ||
| 76 | + def get_organization_plan_items(args): | ||
| 77 | + access_token = args["access_token"] | ||
| 78 | + api_client = ApiClient(host=args["base_path"]) | ||
| 79 | + api_client.set_default_header( | ||
| 80 | + header_name="Authorization", | ||
| 81 | + header_value=f"Bearer {access_token}" | ||
| 82 | + ) | ||
| 83 | + | ||
| 84 | + #ds-snippet-start:Admin13Step3 | ||
| 85 | + asset_group_api = ProvisionAssetGroupApi(api_client=api_client) | ||
| 86 | + plan_items = asset_group_api.get_organization_plan_items(args["organization_id"]) | ||
| 87 | + #ds-snippet-end:Admin13Step3 | ||
| 88 | + | ||
| 89 | + return plan_items | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,12 +1,13 @@ | |||
| 1 | - from .eg001_create_a_new_user import aeg001 | ||
| 2 | - from .eg002_create_active_clm_esign_user import aeg002 | ||
| 3 | - from .eg003_bulk_export_user_data import aeg003 | ||
| 4 | - from .eg004_add_users_via_bulk_import import aeg004 | ||
| 5 | - from .eg005_audit_users import aeg005 | ||
| 6 | - from .eg006_get_user_profile_by_email import aeg006 | ||
| 7 | - from .eg007_get_user_profile_by_user_id import aeg007 | ||
| 8 | - from .eg008_update_user_product_permission_profile import aeg008 | ||
| 9 | - from .eg009_delete_user_product_permission_profile import aeg009 | ||
| 10 | - from .eg010_delete_user_data_from_organization import aeg010 | ||
| 11 | - from .eg011_delete_user_data_from_account import aeg011 | ||
| 12 | - from .eg012_clone_account import aeg012 | ||
| 1 | + from .eg001_create_a_new_user import aeg001 | ||
| 2 | + from .eg002_create_active_clm_esign_user import aeg002 | ||
| 3 | + from .eg003_bulk_export_user_data import aeg003 | ||
| 4 | + from .eg004_add_users_via_bulk_import import aeg004 | ||
| 5 | + from .eg005_audit_users import aeg005 | ||
| 6 | + from .eg006_get_user_profile_by_email import aeg006 | ||
| 7 | + from .eg007_get_user_profile_by_user_id import aeg007 | ||
| 8 | + from .eg008_update_user_product_permission_profile import aeg008 | ||
| 9 | + from .eg009_delete_user_product_permission_profile import aeg009 | ||
| 10 | + from .eg010_delete_user_data_from_organization import aeg010 | ||
| 11 | + from .eg011_delete_user_data_from_account import aeg011 | ||
| 12 | + from .eg012_clone_account import aeg012 | ||
| 13 | + from .eg013_create_account import aeg013 | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments