5 Replies Latest reply on Jun 14, 2019 8:31 AM by Jess Knutson

    Automation API Provisioning question

    Paul Robins
      Share This:


      I've just started playing with the ctm automation API.

      One of the capabilities I'm exploring is the Provision service, installing and registering CTM Agent via the API.

      So this might be a dumb question but here goes:

      I can't find a REST API or curl example for the Provision Install\setup services.

      So it seems the service is only available through the AAPI CLI, which requires node.js and java 8 to run the provision service. And the provision service only works locally, so to be able to automate the install of CTM Agent you would need an Agent host pre-loaded with node.js, AAPI cli, and Java 8 for it to work? In which case it's probably just easier to have the CTM Agent pre-loaded on your server\container....

      Am I understanding this correctly?

      Thanks all,


        • 1. Re: Automation API Provisioning question
          Mun Keong Lee

          Hi Paul

          You are right. There's no direct REST API that can install an agent.

          This can be confirmed by viewing the Swagger UI documentation at Swagger UI  I can only find a list of upgrade services API.




          2 of 2 people found this helpful
          • 2. Re: Automation API Provisioning question
            Mark Francome

            Yes, your understanding is broadly correct. Adriano Gomes explains his take on it here -


            Mass installation of Control-M agents on multiple hosts

            2 of 2 people found this helpful
            • 3. Re: Automation API Provisioning question
              Adriano Gomes

              HI Paul Robins


              As Mun Keong Lee and Mark Francome had mentioned already, unfortunatelly in order do have CTM Agents remotelly installed CTM API is neighter the best nor the fastest because you have to deal with local installs (java and NodeJS and the API itself ) prior to have the ^Deploy and Install^ capability ready to use.

              What is very interesting is the fact when you have it all set and done, you have to invoke the ^Deploy and Install^ process that will first use java to download the  ^installation binary^ and silent install instructions. Another hidden point to consider is the fact of having the CTM API on every agent with a configured environment and credentials just for the sake of the installation.


              If you go mannually and SCP the install binary and silent file from ^CTM-EM repository^ central location over the network you go faster.


              BMC can definitely enhance this agent first installation process by leveraging native operating systems file transfers and remote execution capabilities  by invoking and managing it centrally from CCM´s current installation and update feature. My Hope is that BMC be able to notice that.


              My Best



              3 of 3 people found this helpful
              • 4. Re: Automation API Provisioning question
                Paul Robins

                Thanks for confirming Adriano Gomes

                We already have the Agent packaged in our existing software distribution tool so no big drama but it would be nice to have it all under one service.

                At least we can exploit the config service to automate the agent and host group management side of things in CCM so there's still some wins there.



                1 of 1 people found this helpful
                • 5. Re: Automation API Provisioning question
                  Jess Knutson


                  I'll add this just in case it fits.  For AWS servers you can use a combination of AMI, Lambda, and EC2 instances to auto deploy a Control-M/Agent (and plug-ins) and define the agent to the Control-M/Server and add its self to a host group.  There is still the requirement that Node.js, Java, and the CLI to be installed, but as the tutorials explain that can all be setup in the AMI.  Then when the EC2 instance is shutdown it will remove the Agent from the Control-M/Server and removed from the host group.  We are using this for some of our Data Lake processes and so far is working well.  Also this has been a great fit for AWS servers that are not up 24x7 so that we don't have agents in an unavailable status.  


                  Here is the link to the full tutorial:


                  3 of 3 people found this helpful