FCSM EOS API - Overview

Analytics

PathMethodDescription
/api/v1/analytics/metricsgetRetrieve all metrics
/api/v1/analytics/platforms/{platformId}getRetrieve metrics for specific platform
/api/v1/analytics/summarygetRetrieve usage summary
/api/v1/analytics/summaryUsagegetRetrieve usage summary for all platforms
/api/v1/analytics/platformsUsagegetRetrieve percentage platforms usage
/api/v1/analytics/operatingSystemsgetRetrieve information about operating systems in use

Authorization

PathMethodDescription
/api/v1/auth/externalProvidersgetList of configured external identity providers
/api/v1/auth/externalProviderspostAdds new external identity provider for saml
/api/v1/auth/externalProviders/{providerId}deleteDelete external identity provider
/api/v1/auth/externalProviders/{providerId}getConfigured external identity provider by id
/api/v1/auth/loginpostlogin

Users

PathMethodDescription
/api/v1/user/checkCredentialspostcheckCredentials
/api/v1/user/forgotPasswordpostforgotPassword
/api/v1/user/megetgetMe
/api/v1/user/removeSubscriptiondeleteremoveSubscription
/api/v1/user/resetPasswordpostresetPassword
/api/v1/user/usersgetgetUsers
/api/v1/user/userspostcreateUser
/api/v1/user/users/{user_id}deletedeleteUser
/api/v1/user/users/{user_id}getgetUser
/api/v1/user/users/{user_id}putupdateUser
/api/v1/user/users/{user_id}/setAccessRightsputsetAccessRights
/api/v1/user/users/{user_id}/setPasswordputsetPassword
/api/v1/user/users/{user_id}/setRoleputsetRole
/api/v1/user/validateTokenpostvalidateToken

Configuration

PathMethodDescription
/api/v1/configuration/platformAccessgetGet platform access configutation
/api/v1/configuration/platformAccessputSet platform access configutation
/api/v1/configuration/platformAccess/{platform_id}getGet platform access value
/api/v1/configuration/mailProvidersgetGet all mail providers
/api/v1/configuration/mailProviderspostAdd new provider data
/api/v1/configuration/mailProviders/{provider_id}getGet provider data
/api/v1/configuration/mailProviders/{provider_id}putEdit provider
/api/v1/configuration/mailProviders/{provider_id}deleteDelete provider
/api/v1/configuration/mailProviders/defaultgetGet data for default mail provider
/api/v1/configuration/mailProviders/default/{provider_id}putSet default mail provider
/api/v1/configuration/mailProviders/default/{provider_id}deleteUnset mail provider as default
/api/v1/configuration/managementToolTypesgetGet management tool types
/api/v1/configuration/managementToolsgetGet all management tools
/api/v1/configuration/managementToolspostCreate new management tool
/api/v1/configuration/managementTools/{tool_id}getGet specified management tool
/api/v1/configuration/managementTools/{tool_id}putUpdate specified management tool
/api/v1/configuration/logopostSend logo image to be stored
/api/v1/configuration/logogetGet logo image

Subscription

PathMethodDescription
/api/v1/subscription/subscriptionsgetRetrieve list of all subscriptions
/api/v1/subscription/subscriptionspostCreate new subscription. Provided credentials are validated against target platform
/api/v1/subscription/subscriptions/{subscription_id}getGet single subscription for specified subscription_id
/api/v1/subscription/subscriptions/{subscription_id}deleteDelete subscription for given id
/api/v1/subscription/subscriptions/{subscription_id}putModify subscription for given id
/api/v1/subscription/subscriptions/{subscription_id}/tokensgetGet token for a subscription
/api/v1/subscription/validateVmputValidate a VM against a policy.
/api/v1/subscription/validateWorkshiftputValidate a workshift against a policy.

Management

PathMethodDescription
/api/v1/management/registerVmpostRegister Vm in management tool
/api/v1/management/unregisterVmdeleteUnregister Vm from management tool
/api/v1/management/isManagedgetCheck if a vm is managed
/api/v1/management/managedVmsgetReturn list of managed VM ids
/api/v1/management/testConnectivitypostCheck connection with Vm
/api/v1/management/installApppostInstall application
/api/v1/management/uninstallAppdeleteUninstall application
/api/v1/management/detailsgetGet vm details
/api/v1/management/getBootstrapScriptgetGet bootstrap script
/api/v1/management/unregisterSubscriptionVmsdeleteUnregister vms from subscription
/api/v1/management/replaceAppspostUpload apps metadata
/api/v1/management/appsgetList apps
/api/v1/management/apps/{app_id}getGet app by id
/api/v1/management/tools/{tool_id}/apps/{app_name}getGet app by name
/api/v1/management/appInstancesgetList apps instances
/api/v1/management/appInstancespostCreate an app instance
/api/v1/management/appInstances/{app_instance_id}getGet an app instance
/api/v1/management/appInstances/{app_instance_id}deleteIt is allowed to delete app instances that are in one of the following states: INITIAL, INSTALL_FAILED, UNINSTALL_SUCCEEDED, UNINSTALL_FAILED.
/api/v1/management/appInstances/{app_instance_id}/uninstallputput uninstall
/api/v1/management/tools/{tool_id}/tokenspostGenerate a new token for the given tool
/api/v1/management/tools/{tool_id}/tokens/{token_value}deleteDelete the token

Tags

PathMethodDescription
/api/v1/tag/tagsgetReturns a list of all tags with values
/api/v1/tag/tagspostCreates tag with given name and values
/api/v1/tag/tags/{tagName}deleteDelete tag with given name
/api/v1/tag/tags/{tagName}getReturns the specified tag
/api/v1/tag/tags/{tagName}putUpdate some fields of a tag

Notifications

PathMethodDescription
/api/v1/notification/emailpostSend email

Webhooks

PathMethodDescription
/api/v1/webhook/contentTypesgetGet available content types for webhooks
/api/v1/webhook/eventTypesgetGet available event types for webhooks
/api/v1/webhook/webhooksgetGet list of defined webhooks
/api/v1/webhook/webhookspostCreate a new webhook
/api/v1/webhook/webhooks/{webhook_id}deleteDelete specified webhook
/api/v1/webhook/webhooks/{webhook_id}getGet single webhook
/api/v1/webhook/webhooks/{webhook_id}putUpdate specified webhook
/api/v1/webhook/webhooks/{webhook_id}/disabledeleteDisable specified webhook
/api/v1/webhook/webhooks/{webhook_id}/enableputEnable specified webhook

Image Whitelist

PathMethodDescription
/api/v1/whitelist/imageOSgetGet image type (OS) for a image
/api/v1/whitelist/osListgetGet os types and distributions as a list
/api/v1/whitelist/imagespostAdd single image to whitelist
/api/v1/whitelist/imagesgetGet images from whitelist
/api/v1/whitelist/imagesdeleteDelete whitelist
/api/v1/whitelist/images/{imageId}getGet single image
/api/v1/whitelist/images/{imageId}putPlease use PATCH method. This action will be removed on 14.05.2019
/api/v1/whitelist/images/{imageId}deleteRemove image from whitelist
/api/v1/whitelist/images/{imageId}patchUpdate operating system for image

Compute/Net [VMWare]

PathMethodDescription
/api/v1/vmware/compute/availabilityZonesgetList all Availability Zones
/api/v1/vmware/compute/flavorsgetGet the list of all flavors
/api/v1/vmware/compute/flavors/{flavorId}getGet specific flavor by id
/api/v1/vmware/compute/imagesgetThe endpoint is used only by the analytics service and should be deprecated in favor of whitelist/images.
/api/v1/vmware/compute/images/{imageId}getGet specific images by id
/api/v1/vmware/compute/interfacesgetList of network interfaces
/api/v1/vmware/compute/keypairsgetList all keypairs
/api/v1/vmware/compute/keypairs/generatepostCreate a new keypair
/api/v1/vmware/compute/keypairs/importpostImport a new public keypair
/api/v1/vmware/compute/keypairs/{keypairId}deleteDelete a specific keypair
/api/v1/vmware/compute/networksgetList all networks
/api/v1/vmware/compute/networks/{networkId}/subnetsgetList all subnets which belong to the given network
/api/v1/vmware/compute/privateImagesgetGet private images
/api/v1/vmware/compute/privateImages/{imageId}getGet specific private image by id
/api/v1/vmware/compute/publicImagesgetGet public images
/api/v1/vmware/compute/publicImages/{imageId}getGet specific public image by id
/api/v1/vmware/compute/regionsgetList all regions
/api/v1/vmware/compute/securityGroupsgetList of security groups. The result is always an empty list. There are no security groups in VMWare.
/api/v1/vmware/compute/snapshotsgetGet list of all snapshots
/api/v1/vmware/compute/snapshotspostCreate a new snapshot
/api/v1/vmware/compute/snapshots/{snapshotId}deleteDelete snapshot
/api/v1/vmware/compute/validateSubscriptionpostValidate subscription before adding it
/api/v1/vmware/compute/vmsgetList all virtual machines
/api/v1/vmware/compute/vmspostCreate a new VM
/api/v1/vmware/compute/vms/{vmId}deleteDelete a VM
/api/v1/vmware/compute/vms/{vmId}getGet virtual machine by id
/api/v1/vmware/compute/vms/{vmId}patchModify VM properties. Currently it is possible to modify the VM flavor.
/api/v1/vmware/compute/vms/{vmId}/command/{action}putExecute action on a VM. Actions are start, poweroff, softReboot, hardReboot.
/api/v1/vmware/compute/vms/{vmId}/detailsgetGet VM details
/api/v1/vmware/compute/vms/{vmId}/managementgetCheck if management service for the VM is available
/api/v1/vmware/compute/vms/{vmId}/passwordgetGet the password in an encrypted form for the virtual machine
/api/v1/vmware/compute/vms/{vmId}/setTagputSet a tag value for a VM
/api/v1/vmware/compute/vms/{vmId}/workshiftdeleteDelete the VM Workshift
/api/v1/vmware/compute/vms/{vmId}/workshiftpostCreate a VM Workshift
/api/v1/vmware/compute/vms/{vmId}/workshiftputUpdate the VM Workshift
/api/v1/vmware/compute/volumeTypesgetGet a list of all volume types user can create volume with
/api/v1/vmware/compute/volumesgetGet list of all volumes
/api/v1/vmware/compute/volumespostCreate a new volume
/api/v1/vmware/compute/volumes/{volume_id}patchModify volume properties. Currently it is possible to change to volume size.
/api/v1/vmware/compute/volumes/{volume_id}/detachdeleteDettaches and deletes a volume

Compute/Net [Azure]

PathMethodDescription
/api/v1/azure/compute/publicImagesgetLists all public images for specified subscription
/api/v1/azure/compute/publicImages/{image_id}getGets a single public image by id
/api/v1/azure/compute/privateImagesgetLists private images for specified subscription
/api/v1/azure/compute/privateImages/{image_id}getGets a single private image by id
/api/v1/azure/compute/validateSubscriptionpostValidate subscription credentials
/api/v1/azure/compute/images/{image_id}getGets a single image by id
/api/v1/azure/compute/regionsgetIf subscriptionId is not passed as query parameters endpoint returns list of regions not scoped to any subscription. Otherwise it returns regions for specified subscription.
/api/v1/azure/compute/availabilityZonesgetLists availability zones for specified subscription
/api/v1/azure/compute/availabilitySetsgetLists availability sets for specified subscription and resource group
/api/v1/azure/compute/availabilitySets/{availability_set_id}getGets availability set by id
/api/v1/azure/compute/resourceGroupsgetLists resource groups
/api/v1/azure/compute/resourceGroupspostCreates new resource group
/api/v1/azure/compute/flavorsgetLists flavors for specified subscription
/api/v1/azure/compute/flavors/{flavor_id}getGets a single flavor by ID
/api/v1/azure/compute/vmsgetLists virtual machines for specified subscription
/api/v1/azure/compute/vmspostMay provision managed or unmanaged virtual machine in accordance to the `managementToolId` property. If such is set and points to valid `management tool`, virtual machine will have aformentioned tool deployed and it will be possible to install the application on it.
/api/v1/azure/compute/vms/{vm_id}getGets a single virtual machine by ID
/api/v1/azure/compute/vms/{vm_id}patchModifies specified virtual machine
/api/v1/azure/compute/vms/{vm_id}deleteEndpoint takes care of deleting the virtual machine from the platform. It also removes: - OS volume - all network interfaces - management if VM was managed by management tool - workshift if VM had one - initial password if VM was provisioned with one
/api/v1/azure/compute/vms/{vm_id}/workshiftpostCreate a VM Workshift
/api/v1/azure/compute/vms/{vm_id}/workshiftputUpdate a VM Workshift
/api/v1/azure/compute/vms/{vm_id}/workshiftdeleteDelete VM Workshift
/api/v1/azure/compute/vms/{vm_id}/managementgetGets specified virtual machine management status
/api/v1/azure/compute/vms/{vm_id}/command/{action}putExecutes power action on a VM. Only specified VMPowerAction are allowed.
/api/v1/azure/compute/vms/{vm_id}/passwordgetGets specified virtual machine encrypted password
/api/v1/azure/compute/vms/{vm_id}/detailsgetIf specified virtual machine is provision with enabled management details will contain information gathered by management tool. Aither way it will contains basic information
/api/v1/azure/compute/volumesgetLists volumes for specified subscription
/api/v1/azure/compute/volumespostCreates new volume
/api/v1/azure/compute/volumes/{volume_id}getGets a single volume by ID
/api/v1/azure/compute/volumes/{volume_id}patchModify volume properties
/api/v1/azure/compute/volumes/{volume_id}deleteRemoves volume
/api/v1/azure/compute/volumes/{volume_id}/attachputAttaches volume
/api/v1/azure/compute/volumes/{volume_id}/detachdeleteDettaches volume
/api/v1/azure/compute/volumeTypesgetLists volume types
/api/v1/azure/compute/vms/{vm_id}/assignFloatingIpputAssigns a floating public IP v4 to specified VM
/api/v1/azure/compute/vms/{vm_id}/unassignFloatingIpdeleteUnassigns floating public IP from specified VM
/api/v1/azure/compute/vms/{vm_id}/securityGroups/{security_group_id}putAssigns a new network security group and unassigns old one
/api/v1/azure/compute/vms/{vm_id}/securityGroups/{security_group_id}deleteUnassigns specified security group from specified VM
/api/v1/azure/compute/vms/{vm_id}/setTagputSets/unsets tag in virtual machine
/api/v1/azure/compute/keypairsgetLists keypairs
/api/v1/azure/compute/keypairs/{keypair_id}getGets a single keypair
/api/v1/azure/compute/keypairs/{keypair_id}deleteDelets a single keypair
/api/v1/azure/compute/keypairs/generatepostGenerate a new keypair
/api/v1/azure/compute/keypairs/importpostImport a public key
/api/v1/azure/compute/networksgetList networks for specified subscription
/api/v1/azure/compute/networks/{network_id}/subnetsgetLists subnets for specified network and subscription
/api/v1/azure/compute/interfacesgetLists interfaces for specified subscription
/api/v1/azure/compute/securityGroupsgetLists security groups for specified subscription
/api/v1/azure/compute/snapshotsgetGet list of all snapshots
/api/v1/azure/compute/snapshotspostCreate a new snapshot
/api/v1/azure/compute/snapshots/{snapshot_id}deleteDelete snapshot

Compute/Net [AWS]

PathMethodDescription
/api/v1/aws/compute/availabilityZonesgetList all availability zones
/api/v1/aws/compute/flavorsgetLists flavors
/api/v1/aws/compute/flavors/{flavor_id}getGet flavor by id
/api/v1/aws/compute/images/{image_id}getGets image by id
/api/v1/aws/compute/interfacesgetGets interfaces for specified subscription
/api/v1/aws/compute/keypairsgetLists keypairs
/api/v1/aws/compute/keypairs/generatepostCreate a new keypair
/api/v1/aws/compute/keypairs/importpostImport a new public key
/api/v1/aws/compute/keypairs/{keypair_id}deleteDelete keypair by id
/api/v1/aws/compute/keypairs/{keypair_id}getGet keypair by id
/api/v1/aws/compute/networksgetGets list of all networks
/api/v1/aws/compute/networks/{network_id}/subnetsgetLists subnets of specified network and subscription
/api/v1/aws/compute/privateImagesgetLists private images
/api/v1/aws/compute/privateImages/{image_id}getGets private image by id
/api/v1/aws/compute/publicImagesgetLists public images
/api/v1/aws/compute/publicImages/{image_id}getGets public image by id
/api/v1/aws/compute/regionsgetLists regions
/api/v1/aws/compute/securityGroupsgetLists security groups for specified subscription
/api/v1/aws/compute/snapshotsgetLists snapshots
/api/v1/aws/compute/snapshotspostCreates a new snapshot
/api/v1/aws/compute/snapshots/{snapshot_id}deleteDeletes snapshots
/api/v1/aws/compute/validateSubscriptionpostValidate subscription credentials
/api/v1/aws/compute/vmsgetGets list of all vms
/api/v1/aws/compute/vmspostCreate a new virtual machine
/api/v1/aws/compute/vms/{vm_id}deleteDeletes VM by id
/api/v1/aws/compute/vms/{vm_id}getGets vm by id
/api/v1/aws/compute/vms/{vm_id}patchModify VM properties
/api/v1/aws/compute/vms/{vm_id}/command/{action}putExcecutes power action on a VM
/api/v1/aws/compute/vms/{vm_id}/detailsgetGets VM details
/api/v1/aws/compute/vms/{vm_id}/managementgetGets management status for a VM
/api/v1/aws/compute/vms/{vm_id}/passwordgetGet encrypted password for a VM
/api/v1/aws/compute/vms/{vm_id}/securityGroups/{security_group_id}deleteRemoves Security Group from a specified VM
/api/v1/aws/compute/vms/{vm_id}/securityGroups/{security_group_id}putAssign Security Group to a specified VM
/api/v1/aws/compute/vms/{vm_id}/setTagputSet tag value for VM
/api/v1/aws/compute/vms/{vm_id}/workshiftdeleteDelete VM Workshift
/api/v1/aws/compute/vms/{vm_id}/workshiftpostAdd a workshift to the VM
/api/v1/aws/compute/vms/{vm_id}/workshiftputUpdate VM Workshift
/api/v1/aws/compute/volumeTypesgetGets a list of all volume types user can create volume with
/api/v1/aws/compute/volumesgetGets list of all volumes
/api/v1/aws/compute/volumespostCreates a new EBS volume
/api/v1/aws/compute/volumes/{volume_id}deleteDeletes volume by id
/api/v1/aws/compute/volumes/{volume_id}getGets volume by id
/api/v1/aws/compute/volumes/{volume_id}patchModify volume properties
/api/v1/aws/compute/volumes/{volume_id}/attachputAttach volume to specified VM
/api/v1/aws/compute/volumes/{volume_id}/detachdeleteDetach volume from a specified vm