by Tim Hunt.
Well, you have not yet given us enough information about what the situation is to judge. What is this SOAP API. Is this an API povided by some other system that Moodle needs to call, or will this be an API in Moodle that is called by the other system? When will this API be called, and to do what? All these factors affect when and if this would best be done as a separate plugin or not.