Add basic subscription apis and tests