For the project I'm working on, I want to save the credit card information without capturing payment. This is a schedule for services app and an initial payment will be scheduled and then subsequent payments will happen at varying intervals. I know this is a subscription transaction, but I am trying to understand how that would work if the payment is not at regular intervals. Is this possible and is that something that works under the guise of the subscription model?
This is possible but not under the guise of Authorize.Net's subscription model. Because your future payments will not be at regular intervals you will need to handle the scheduling of those payments yourself.
You can use CIM to store the credit card information and make the first payment, but then you will need to have your own scheduling system that knows your scheduling rules and then use it to charge payments using those CIM payment profiles when appropriate.