Example:
Basic Code to use Python to Copy Split Definition (Whitelists, Targeting Rules and Treatments) for a given Split in Workspace from one Environment to another, and overwrite existing Definitions in the target Environment.
Script will use the REST Admin API to perform the actions.
Environment:
- Python 2.7.15
- requests 2.18.1
How to use:
- Class wrapper for Admin API can be downloaded from the link below:
SplitAPI.py
- Use the code below, update the following variables:
sourceSplitName, sourceWorkspaceName, sourceEnvironmentName, targetEnvironmentName
Admin API Key
import SplitAPI
import json
#############################################
sourceSplitName="clients"
sourceWorkspaceName="Default"
sourceEnvironmentName="Production"
targetSplitName=sourceSplitName
targetWorkspaceName=sourceWorkspaceName
targetEnvironmentName="Staging"
#############################################
mySplit = SplitAPI.SplitAPI('ADMIN API KEY')
sourceWorkspaceId = mySplit.GetWorkspaceId(sourceWorkspaceName)
sourceEnvironmentId = mySplit.GetEnvironmentId(sourceWorkspaceId, sourceEnvironmentName)
sourceSplitInfo = mySplit.GetSplitDefinition(sourceWorkspaceId, sourceSplitName, sourceEnvironmentId)
sourceSplitDefinition = '{"treatments":'+json.dumps(sourceSplitInfo["treatments"])+',"defaultTreatment":'+json.dumps(sourceSplitInfo["defaultTreatment"])+',"rules":'+json.dumps(sourceSplitInfo["rules"])+', "defaultRule":'+json.dumps(sourceSplitInfo["defaultRule"])+'}'
targetWorkspaceId = mySplit.GetWorkspaceId(targetWorkspaceName)
targetEnvironmentId = mySplit.GetEnvironmentId(targetWorkspaceId, targetEnvironmentName)
mySplit.FullUpdateSplitToEnvironment(targetWorkspaceId, targetEnvironmentId, targetSplitName, sourceSplitDefinition)
Comments
0 comments
Please sign in to leave a comment.