AMP API Python¶
The project can be found on PyPi.
Key Features¶
Pythonic API wrapper using async and await.
- Data is in dataclasses for easier management and interaction.
Optional parameter per function or global to disable formatting of data.
- Parent classes ADSInstance and AMPInstance to group endpoints together and make handling of multiple Instances easier.
This will also limit Instance specific API endpoints (eg. Minecraft) to that Instance type only.
Installing¶
Note
Python 3.10 or higher is required
To install run the below command in a Terminal.
1# Linux/macOS/Windows
2pip install cc-ampapi
Basic Usage¶
First you need to fill out the
APIParamsclass with the required fields (url,userandpassword).- You can then use the Parent
AMPADSInstanceor the smaller classAMPInstanceor any of the API classes as a stand alone. See Quick Example for a visual example.
- You can then use the Parent
API Classes:
- Bridge
- Base
BaseBase.api_urlBase.session_ttlBase.instance_idBase.format_dataBase.ads_only()Base.call_end_point()Base.camel_to_snake_re()Base.camel_case_data()Base.dataclass_to_dict()Base.json_to_dataclass()Base.parse_bridge()Base.parse_data()Base.sanitize_json()Base.sanitize_path()Base.to_snake_case()Base.version_validation()
- ADS Module
ADSModuleADSModule.add_datastore()ADSModule.apply_instance_configuration()ADSModule.apply_template()ADSModule.attach_ads()ADSModule.clone_template()ADSModule.create_deployment_template()ADSModule.create_instance()ADSModule.create_local_instance()ADSModule.delete_datastore()ADSModule.delete_deployment_template()ADSModule.delete_instance()ADSModule.delete_instance_users()ADSModule.deploy_template()ADSModule.detach_target()ADSModule.extract_everywhere()ADSModule.get_application_endpoints()ADSModule.get_datastore()ADSModule.get_datastores()ADSModule.get_datastore_instances()ADSModule.get_deployment_templates()ADSModule.get_group()ADSModule.get_instance()ADSModule.get_instances()ADSModule.get_instance_network_info()ADSModule.get_instance_statuses()ADSModule.get_local_instances()ADSModule.get_provision_arguments()ADSModule.get_provision_fitness()ADSModule.get_supported_applications()ADSModule.get_target_info()ADSModule.handout_instance_configs()ADSModule.manage_instance()ADSModule.modify_custom_firewall_rule()ADSModule.move_instance_datastore()ADSModule.reactivate_local_instances()ADSModule.refresh_app_cache()ADSModule.refresh_group()ADSModule.refresh_instance_config()ADSModule.refresh_remote_config_stores()ADSModule.register_target()ADSModule.repair_datastore()ADSModule.request_datastore_size_calculation()ADSModule.restart_instance()ADSModule.servers()ADSModule.set_instance_network_info()ADSModule.set_instance_config()ADSModule.set_instance_suspended()ADSModule.start_all_instances()ADSModule.start_instance()ADSModule.stop_all_instances()ADSModule.stop_instance()ADSModule.update_datastore()ADSModule.update_deployment_template()ADSModule.update_instance_info()ADSModule.update_target()ADSModule.update_target_info()ADSModule.upgrade_all_instances()ADSModule.upgrade_instance()
- Analytics Module
- Core Module
CoreCore.triggersCore.acknowledge_amp_update()Core.activate_amp_license()Core.add_event_trigger()Core.add_task()Core.cancel_task()Core.change_user_password()Core.change_task_order()Core.confirm_two_factor_setup()Core.create_role()Core.create_user()Core.current_session_has_permission()Core.delete_instance_users()Core.delete_role()Core.delete_task()Core.delete_trigger()Core.delete_user()Core.disable_two_factor()Core.dismiss_all_tasks()Core.dismiss_task()Core.edit_interval_trigger()Core.edit_task()Core.enable_two_factor()Core.end_user_session()Core.get_active_amp_sessions()Core.get_all_amp_user_info()Core.get_amp_role_permissions()Core.get_amp_user_info()Core.get_amp_users_summary()Core.get_api_spec()Core.get_audit_log_entries()Core.get_authentication_requirements()Core.get_config()Core.get_configs()Core.get_diagnostics_info()Core.get_module_info()Core.get_new_guid()Core.get_oidc_login_url()Core.get_permissions_spec()Core.get_port_summaries()Core.get_provision_spec()Core.get_remote_login_token()Core.get_role()Core.get_role_data()Core.get_role_ids()Core.get_schedule_data()Core.get_setting_spec()Core.get_setting_values()Core.get_status()Core.get_tasks()Core.get_time_interval_trigger()Core.get_triggers()Core.get_update_info()Core.get_updates()Core.get_user_action_spec()Core.get_user_info()Core.get_user_list()Core.get_webauthn_challenge()Core.get_webauthn_credential_ids()Core.get_webauthn_credential_summary()Core.get_webserver_metrics()Core.kill_application()Core.kill_instance()Core.login()Core.logout()Core.restart_amp()Core.resume_instance()Core.refresh_setting_value_list()Core.refresh_settings_source_cache()Core.rename_role()Core.restart_instance()Core.restart_application()Core.reset_user_password()Core.revoke_webauthn_credential()Core.run_security_check()Core.run_event_trigger_immediately()Core.set_amp_user_role_membership()Core.set_amp_role_permission()Core.set_trigger_enabled()Core.send_console_message()Core.set_configs()Core.set_config()Core.start_application()Core.stop_application()Core.suspend_instance()Core.update_account_info()Core.upgrade_amp()Core.update_amp_instance()Core.update_application()Core.update_user_info()Core.webauthn_register()
- Email Sender Module
- File Manager Module
FileManagerPluginFileManagerPlugin.append_file_chunk()FileManagerPlugin.calculate_file_md5_sum()FileManagerPlugin.change_exclusion()FileManagerPlugin.copy_file()FileManagerPlugin.create_archive()FileManagerPlugin.create_directory()FileManagerPlugin.download_file_from_url()FileManagerPlugin.empty_trash()FileManagerPlugin.extract_archive()FileManagerPlugin.get_directory_listing()FileManagerPlugin.get_file_chunk()FileManagerPlugin.read_file_chunk()FileManagerPlugin.release_file_upload_lock()FileManagerPlugin.rename_directory()FileManagerPlugin.rename_file()FileManagerPlugin.trash_directory()FileManagerPlugin.trash_file()FileManagerPlugin.write_file_chunk()
- Local File Backup Module
LocalFileBackupPluginLocalFileBackupPlugin.delete_from_s3()LocalFileBackupPlugin.delete_local_backup()LocalFileBackupPlugin.download_from_s3()LocalFileBackupPlugin.get_backups()LocalFileBackupPlugin.refresh_backup_list()LocalFileBackupPlugin.restore_backup()LocalFileBackupPlugin.set_backup_sticky()LocalFileBackupPlugin.take_backup()LocalFileBackupPlugin.upload_to_s3()
- Minecraft Module
MinecraftModuleMinecraftModule.mc_only()MinecraftModule.mc_accept_eula()MinecraftModule.mc_add_op_entry()MinecraftModule.mc_add_to_whitelist()MinecraftModule.mc_buk_get_categories()MinecraftModule.mc_buk_get_installed_plugins()MinecraftModule.mc_buk_get_install_update_plugin()MinecraftModule.mc_buk_get_plugin_info()MinecraftModule.mc_buk_get_plugins_for_category()MinecraftModule.mc_buk_get_popular_plugins()MinecraftModule.mc_buk_get_remove_plugin()MinecraftModule.mc_buk_get_search()MinecraftModule.mc_ban_user_by_id()MinecraftModule.mc_clear_inventory_by_id()MinecraftModule.mc_get_failure_reason()MinecraftModule.mc_get_head_by_uuid()MinecraftModule.mc_get_op_whitelist()MinecraftModule.mc_get_whitelist()MinecraftModule.mc_kick_user_by_id()MinecraftModule.mc_kill_by_id()MinecraftModule.mc_load_op_list()MinecraftModule.mc_remove_op_entry()MinecraftModule.mc_remove_whitelist_entry()MinecraftModule.mc_smite_by_id()
AMP Instance Classes:
Types:
- Enums
AccessModeStateADSModeStateAMPDownloadMirrorStateAMPInstanceStateAMPInstanceState.undefinedAMPInstanceState.stoppedAMPInstanceState.pre_startAMPInstanceState.configuringAMPInstanceState.startingAMPInstanceState.readyAMPInstanceState.restartingAMPInstanceState.stoppingAMPInstanceState.preparing_for_sleepAMPInstanceState.sleepingAMPInstanceState.waitingAMPInstanceState.installingAMPInstanceState.updatingAMPInstanceState.awaiting_user_inputAMPInstanceState.failedAMPInstanceState.suspendedAMPInstanceState.maintenanceAMPInstanceState.indeterminate
AMPThemeApplicationUpdatesStateAppStartupModeStateContainerMemoryPolicyStateDefaultIPBindingStateLoggingLevelStatePortAssignmentStatePostCreateActionsStatePostCreateStateReleaseStreamStateTwoFactoryModeState
- Types
- Dataclasses
attribute_converter()timestamp_converter()ActionResultAnalyticsCountryDataAnalyticsCountryData.countryAnalyticsCountryData.display_session_timeAnalyticsCountryData.session_countAnalyticsCountryData.session_time_percentAnalyticsCountryData.total_session_timeAnalyticsCountryData.unique_player_countAnalyticsCountryData.unique_player_percentAnalyticsCountryData.session_percent
AnalyticsFilterAnalyticsStatsAnalyticsSummaryAnalyticsTopPlayersAPIParamsAPISessionApplicationApplication.authorApplication.container_reasonApplication.container_supportApplication.descriptionApplication.display_image_sourceApplication.extra_setup_steps_uriApplication.friendly_nameApplication.idApplication.is_service_specApplication.module_nameApplication.no_commercial_usageApplication.supported_platformsApplication.settings
AuditLogEntryBackupBukkitPluginBukkitPlugin.authorBukkitPlugin.categoryBukkitPlugin.downloadsBukkitPlugin.fileBukkitPlugin.idBukkitPlugin.likesBukkitPlugin.linksBukkitPlugin.nameBukkitPlugin.tagBukkitPlugin.versionBukkitPlugin.iconBukkitPlugin.tested_versionBukkitPlugin.update_dateBukkitPlugin.release_dateBukkitPlugin.ratingBukkitPlugin.externalBukkitPlugin.existence_statusBukkitPlugin.installed_versionBukkitPlugin.versionsBukkitPlugin.premiumBukkitPlugin.source_code_linkBukkitPlugin.supported_languagesBukkitPlugin.contributorsBukkitPlugin.donation_link
ConsoleEntriesControllerController.idController.disabledController.is_remoteController.platformController.datastoresController.creates_in_containersController.can_createController.available_instancesController.available_ipsController.tagsController.urlController.last_updatedController.instance_idController.stateController.fitnessController.friendly_nameController.state_reasonController.descriptionController.tags_list
CPUInfoCreateInstanceCreateInstance.target_ads_instanceCreateInstance.friendly_nameCreateInstance.moduleCreateInstance.new_instance_idCreateInstance.instance_nameCreateInstance.ip_bindingCreateInstance.port_numberCreateInstance.admin_usernameCreateInstance.admin_passwordCreateInstance.provision_settingsCreateInstance.auto_configureCreateInstance.post_createCreateInstance.start_on_bootCreateInstance.display_image_sourceCreateInstance.target_datastore
DCConsumesDCParameterMappingDiagnosticsDiagnostics.application_nameDiagnostics.application_versionDiagnostics.build_dateDiagnostics.build_specDiagnostics.cpu_layoutDiagnostics.cpu_modelDiagnostics.codenameDiagnostics.installed_ramDiagnostics.instance_idDiagnostics.last_argumentsDiagnostics.last_executableDiagnostics.last_process_idDiagnostics.loaded_pluginsDiagnostics.moduleDiagnostics.module_applicationDiagnostics.network_modeDiagnostics.platformDiagnostics.release_streamDiagnostics.system_typeDiagnostics.tools_versionDiagnostics.virtualizationDiagnostics.os
DirectoryEndpointsFileChunkFitnessInstanceDatastoreInstanceInfoInstanceInfo.instance_idInstanceInfo.friendly_nameInstanceInfo.descriptionInstanceInfo.suspendedInstanceInfo.exclude_from_firewallInstanceInfo.run_in_containerInstanceInfo.container_memoryInstanceInfo.container_max_cpuInstanceInfo.container_imageInstanceInfo.memory_policyInstanceInfo.start_on_bootInstanceInfo.welcome_message
InstanceInstance.application_endpointsInstance.app_stateInstance.container_memory_mbInstance.container_memory_policyInstance.daemonInstance.daemon_autostartInstance.deployment_argsInstance.disk_usage_mbInstance.exclude_from_firewallInstance.friendly_nameInstance.ipInstance.instance_idInstance.instance_nameInstance.is_container_instanceInstance.is_httpsInstance.management_modeInstance.moduleInstance.portInstance.release_streamInstance.runningInstance.suspendedInstance.target_idInstance.amp_versionInstance.container_cpusInstance.tagsInstance.module_display_nameInstance.metricsInstance.display_image_sourceInstance.descriptionInstance.online()
InstanceStatusLoginResultsLoginUserInfoMCUserMessagesMethodsMetricMetricsDataModuleModule.amp_buildModule.amp_versionModule.api_versionModule.allow_remember_meModule.analyticsModule.app_nameModule.authorModule.base_portModule.brandingModule.build_specModule.display_base_uriModule.end_point_urModule.feature_setModule.friendly_nameModule.instance_idModule.instance_nameModule.is_remote_instanceModule.loaded_pluginsModule.module_nameModule.nameModule.primary_endpointModule.requires_full_loadModule.supports_sleepModule.timestampModule.tools_versionModule.version_codename
OPListOPWhitelistPlatformInfoPlayerPlayersPortProvisionProvisionSettingInfoPortInfoRemoteTargetInfoRoleRunningTaskRunningTask.is_primary_taskRunningTask.start_timeRunningTask.idRunningTask.nameRunningTask.descriptionRunningTask.hide_from_uiRunningTask.fast_dismissRunningTask.last_update_pushedRunningTask.progress_percentRunningTask.is_cancellableRunningTask.originRunningTask.is_indeterminateRunningTask.stateRunningTask.status
ScheduleDataSessionSettingSpecSettingSpec.categorySettingSpec.actionsSettingSpec.always_allow_readSettingSpec.attributesSettingSpec.current_valueSettingSpec.descriptionSettingSpec.enum_valuesSettingSpec.enum_values_are_deferredSettingSpec.input_typeSettingSpec.is_provision_specSettingSpec.keywordsSettingSpec.max_lengthSettingSpec.min_valueSettingSpec.metaSettingSpec.nameSettingSpec.nodeSettingSpec.orderSettingSpec.placeholderSettingSpec.read_onlySettingSpec.read_only_provisionSettingSpec.requiredSettingSpec.requires_restartSettingSpec.selection_sourceSettingSpec.subcategorySettingSpec.suffixSettingSpec.tagSettingSpec.val_type
SettingSpecActionSettingsSpecAttributeSettingsSpecParentSettingSpecSelectionSourceStatusTemplateTimedTriggerTriggersTriggerTasksUpdateInfoUpdatesUserVersionInfo
- Data Modules
DeploymentTemplateDeploymentTemplate.clone_role_into_userDeploymentTemplate.descriptionDeploymentTemplate.idDeploymentTemplate.moduleDeploymentTemplate.nameDeploymentTemplate.template_base_appDeploymentTemplate.template_instanceDeploymentTemplate.template_roleDeploymentTemplate.match_datastore_tagsDeploymentTemplate.settings_mappingsDeploymentTemplate.start_on_bootDeploymentTemplate.tagsDeploymentTemplate.zip_overlay_pathDeploymentTemplate.to_dict()
UserApplicationDataTriggerID
Docs:
- Method Events
- Method Information
- BanUser
- BanUserIP
- CheckForUpdates
- CheckForUpdates - MinecraftModule
- CommandWithWarnings
- DiscordMessage
- Fabulous
- GiveXP
- IfCondition
- KickUser
- KillPlayer
- MakeGETRequest
- MakePOSTRequest
- PushMessage
- PushMessageChannel
- Restart
- RestartIfEmpty
- RestoreBackup
- SaveChanges
- ScheduleEmptyUpdate
- SendConsole
- SendConsoleAdv
- SendGlobalTitle
- SendMail
- SendMultipleConsole
- SendServerMessage
- SendTitle
- SendUserMessage
- SendWakeOnLan
- SetGameTime
- SlackMessage
- Sleep
- SmitePlayer
- Start
- Stop
- StopIfEmpty
- TakeBackup
- TakeBackupWhileDown
- TakeStickyBackup
- TeleportToCoords
- TeleportToPlayer
- UpdateAndRestart
- Wait
- Weaken
- Method Information
- Trigger Events
- Permission Nodes
- Setting Nodes