Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 31 additions & 3 deletions 34 app/admin/examples/eg001_create_a_new_user.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from docusign_admin import UsersApi, NewUserRequest, NewUserRequestAccountProperties, PermissionProfileRequest, GroupRequest
from docusign_esign import AccountsApi, ApiClient, GroupsApi
from flask import session
Expand Down Expand Up @@ -43,7 +44,16 @@ def get_permission_profiles(args):

#ds-snippet-start:Admin1Step3
accounts_api = AccountsApi(api_client=api_client)
profiles = accounts_api.list_permissions(account_id=account_id)
(profiles, status, headers) = accounts_api.list_permissions_with_http_info(account_id=account_id)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")

profiles_list = profiles.to_dict()["permission_profiles"]
#ds-snippet-end:Admin1Step3
return profiles_list
Expand All @@ -64,7 +74,16 @@ def get_groups(args):

#ds-snippet-start:Admin1Step4
groups_api = GroupsApi(api_client)
groups = groups_api.list_groups(account_id=account_id)
(groups, status, headers) = groups_api.list_groups_with_http_info(account_id=account_id)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")

groups_dict = groups.to_dict()
groups_list = groups_dict["groups"]
#ds-snippet-end:Admin1Step4
Expand Down Expand Up @@ -127,9 +146,18 @@ def worker(self, args):

# Creates a user using a method from the user API
#ds-snippet-start:Admin1Step6
response = user_api.create_user(
(response, status, headers) = user_api.create_user_with_http_info(
args["organization_id"],
request_body
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin1Step6

return response
43 changes: 40 additions & 3 deletions 43 app/admin/examples/eg002_create_active_clm_esign_user.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from docusign_admin import ApiClient, ProductPermissionProfilesApi, DSGroupsApi, UsersApi, NewMultiProductUserAddRequest, ProductPermissionProfileRequest, DSGroupRequest
from flask import session, json, request

Expand Down Expand Up @@ -37,7 +38,19 @@ def get_permission_profiles(args):
)
#ds-snippet-start:Admin2Step3
product_permission_profiles_api = ProductPermissionProfilesApi(api_client=api_client)
profiles = product_permission_profiles_api.get_product_permission_profiles(organization_id=org_id, account_id=session["ds_account_id"])
(profiles, status, headers) = product_permission_profiles_api.get_product_permission_profiles_with_http_info(
organization_id=org_id,
account_id=session["ds_account_id"]
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")

profiles_list = profiles.to_dict()["product_permission_profiles"]
#ds-snippet-end:Admin2Step3
return profiles_list
Expand All @@ -59,8 +72,20 @@ def get_groups(args):

#ds-snippet-start:Admin2Step4
ds_groups_api = DSGroupsApi(api_client)
ds_groups = ds_groups_api.get_ds_groups(organization_id=org_id, account_id=session["ds_account_id"])
(ds_groups, status, headers) = ds_groups_api.get_ds_groups_with_http_info(
organization_id=org_id,
account_id=session["ds_account_id"]
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin2Step4

return ds_groups

@staticmethod
Expand Down Expand Up @@ -108,7 +133,19 @@ def worker(self, args):

#ds-snippet-start:Admin2Step6
users_api = UsersApi(api_client)
response = users_api.add_or_update_user(organization_id=org_id, account_id=session["ds_account_id"], request=new_user)
(response, status, headers) = users_api.add_or_update_user_with_http_info(
organization_id=org_id,
account_id=session["ds_account_id"],
request=new_user
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin2Step6

return response.to_dict()
21 changes: 19 additions & 2 deletions 21 app/admin/examples/eg003_bulk_export_user_data.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from docusign_admin import ApiClient
from docusign_admin.apis import BulkExportsApi
from flask import session
Expand Down Expand Up @@ -28,12 +29,20 @@ def worker(cls):

# Create a user list export request
#ds-snippet-start:Admin3Step3
response = export_api.create_user_list_export(
(response, status, headers) = export_api.create_user_list_export_with_http_info(
organization_id,
{
"type": "organization_memberships_export"
}
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin3Step3

# Save user_list_export_id in a client session
Expand Down Expand Up @@ -68,10 +77,18 @@ def get_csv_user_list(cls):

# Getting the user list export response
#ds-snippet-start:Admin3Step4
response = export_api.get_user_list_export(
(response, status, headers) = export_api.get_user_list_export_with_http_info(
organization_id,
session['user_list_export_id']
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin3Step4

# Trying to get the user list export id
Expand Down
24 changes: 22 additions & 2 deletions 24 app/admin/examples/eg004_add_users_via_bulk_import.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from os import path
from docusign_admin.apis import BulkImportsApi
from flask import session, Response
Expand Down Expand Up @@ -67,10 +68,18 @@ def worker(self, request):
api_client.set_default_header(header_name, header_value)

# Returns the response from the create_bulk_import_add_users_request method
response = import_api.create_bulk_import_add_users_request(
(response, status, headers) = import_api.create_bulk_import_add_users_request_with_http_info(
organization_id,
csv_file_path
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin4Step3

# Save user list import id in a client session
Expand All @@ -92,7 +101,18 @@ def check_status():
import_api = BulkImportsApi(api_client=api_client)

#ds-snippet-start:Admin4Step4
import_results = import_api.get_bulk_user_import_request(organization_id, session['import_data_id'])
(import_results, status, headers) = import_api.get_bulk_user_import_request_with_http_info(
organization_id,
session['import_data_id']
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin4Step4

if import_results.status == "completed":
Expand Down
26 changes: 21 additions & 5 deletions 26 app/admin/examples/eg005_audit_users.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

from ...ds_config import DS_CONFIG
from app.admin.utils import get_organization_id
import datetime
from datetime import datetime as dt, timezone, timedelta

class Eg005AuditUsersController:
@staticmethod
Expand Down Expand Up @@ -37,15 +37,23 @@ def worker(args):
#ds-snippet-end:Admin5Step2

#ds-snippet-start:Admin5Step3
today = datetime.datetime.now()
ten_days_ago = today - (datetime.timedelta(days = 10))
today = dt.now()
ten_days_ago = today - (timedelta(days = 10))
last_modified_since = ten_days_ago.strftime('%Y-%m-%d')

users_api = UsersApi(api_client=api_client)
users = users_api.get_users(
(users, status, headers) = users_api.get_users_with_http_info(
organization_id=org_id,
account_id=account_id,
last_modified_since=last_modified_since)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin5Step3

#ds-snippet-start:Admin5Step4
Expand All @@ -59,7 +67,15 @@ def worker(args):
#ds-snippet-start:Admin5Step5
profile_list = []
for email in emails:
profile = users_api.get_user_profiles(organization_id=org_id, email=email)
(profile, status, headers) = users_api.get_user_profiles_with_http_info(organization_id=org_id, email=email)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
profile_list.append(profile.to_dict())

results = {"Modified users": profile_list}
Expand Down
11 changes: 10 additions & 1 deletion 11 app/admin/examples/eg006_get_user_profile_by_email.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from docusign_admin import ApiClient, UsersApi
from flask import session, request

Expand Down Expand Up @@ -39,9 +40,17 @@ def worker(args):
#ds-snippet-start:Admin6Step3
users_api = UsersApi(api_client=api_client)

results = users_api.get_user_ds_profiles_by_email(
(results, status, headers) = users_api.get_user_ds_profiles_by_email_with_http_info(
organization_id=org_id,
email=email)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin6Step3

return results
11 changes: 10 additions & 1 deletion 11 app/admin/examples/eg007_get_user_profile_by_user_id.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from docusign_admin import ApiClient, UsersApi
from flask import session, request

Expand Down Expand Up @@ -39,9 +40,17 @@ def worker(args):
#ds-snippet-start:Admin7Step3
users_api = UsersApi(api_client=api_client)

results = users_api.get_user_ds_profile(
(results, status, headers) = users_api.get_user_ds_profile_with_http_info(
organization_id=org_id,
user_id=user_id)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin7Step3

return results
22 changes: 20 additions & 2 deletions 22 app/admin/examples/eg008_update_user_product_permission_profile.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from datetime import datetime as dt, timezone
from docusign_admin import (
ApiClient,
ProductPermissionProfilesApi,
Expand Down Expand Up @@ -33,10 +34,19 @@ def get_permission_profiles():
)

product_permission_profiles_api = ProductPermissionProfilesApi(api_client=api_client)
profiles = product_permission_profiles_api.get_product_permission_profiles(
(profiles, status, headers) = product_permission_profiles_api.get_product_permission_profiles_with_http_info(
organization_id=get_organization_id(),
account_id=session["ds_account_id"]
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")

profiles_list = profiles.to_dict()["product_permission_profiles"]
return profiles_list

Expand Down Expand Up @@ -76,11 +86,19 @@ def worker(self, args):

#ds-snippet-start:Admin8Step4
product_permission_profiles_api = ProductPermissionProfilesApi(api_client=api_client)
response = product_permission_profiles_api.add_user_product_permission_profiles_by_email(
(response, status, headers) = product_permission_profiles_api.add_user_product_permission_profiles_by_email_with_http_info(
organization_id=org_id,
account_id=account_id,
user_product_permission_profiles_request=user_product_permission_profile_request
)

remaining = headers.get("X-RateLimit-Remaining")
reset = headers.get("X-RateLimit-Reset")

if remaining is not None and reset is not None:
reset_date = dt.fromtimestamp(int(reset), tz=timezone.utc)
print(f"API calls remaining: {remaining}")
print(f"Next Reset: {reset_date}")
#ds-snippet-end:Admin8Step4

return response.to_dict()
Loading
Loading
Morty Proxy This is a proxified and sanitized view of the page, visit original site.