internal static async Task CreatePartStudioTranslation(CommandExecutionContext context, Dictionary <string, List <string> > options, List <string> values)
        {
            OnshapePartstudioTranslationParameters translationParameters = new OnshapePartstudioTranslationParameters()
            {
                formatName    = options.GetOptionValue(Constants.FORMAT),
                versionString = options.GetOptionValue(Constants.FORMAT_VERSION),
                partIds       = values != null?values.ToArray() : null
            };
            string storeInDocumentStr = options.GetOptionValue(Constants.STORE_IN_DOCUMENT);

            if (!String.IsNullOrEmpty(storeInDocumentStr))
            {
                translationParameters.storeInDocument = Boolean.Parse(storeInDocumentStr);
            }
            OnshapeTranslationStatus status = await context.Client.CreatePartstudioTranslation(options[Constants.DOCUMENT_ID][0], options[Constants.WORKSPACE_ID][0], options[Constants.ELEMENT_ID][0], translationParameters);

            Console.WriteLine(JsonConvert.SerializeObject(status, Formatting.Indented));
        }
 public async Task <OnshapeTranslationStatus> CreatePartstudioTranslation(String documentId, String workspaceId, String elementId, OnshapePartstudioTranslationParameters parameters)
 {
     return(await HttpPost <OnshapeTranslationParameters, OnshapeTranslationStatus>(String.Format(Constants.ELEMENT_TRANSLATIONS_API_URI, Constants.PARTSTUDIOS_PATH_NAME, documentId, workspaceId, elementId), parameters));
 }