How do I create subscription plans?

You must first have a Stripe Connect account with an OAuth connection to the Camio platform in order to create your own Subscription Plans. See the article "How do I connect Camio to my Stripe account?".

  1. Open your Stripe Dashboard at

  2. Choose Subscriptions and Plans

  3. Create the Plan using the Stripe UI or API. Remember, you cannot change the price of a Plan after it has been created, so contact Camio to review any questions about pricing prior to creating the Plan.

  4. Specify the metadata that describes the service level and price of the Plan.

Metadata key/value descriptions

key example value description
history_days 45 Required integer number of days that video history is retained.
data_bytes 32212254720 Required integer number of bytes uploaded included in the base price of the Plan. For example, 30 Gigabytes is 32212254720 bytes.
data_overage_bytes 10737418240 Required integer number of bytes incrementally added to the user's account upon exceeding data_bytes in a particular billing period. For example, 10 Gigabytes is 10737418240 bytes.
data_overage_price  500 Required integer number of cents to charge the user for the additional data_overage_bytes. For example, $5 (5 US Dollars) is 500.
timelapse_price 25 Required integer number of cents per 600 seconds of compute time to encode a timelapse movie. The workload varies by query, resolution, frame rate, etc.. so to calibrate, 600 seconds handles about 1,000 events (roughly 2,500 videos).
vision_services  LABEL_DETECTION,TEXT_DETECTION Optional comma-separated list of vision services to be applied to important Events. LABEL_DETECTION,TEXT_DETECTION
vision_services_rate  10 Required when vision_services has been specified. The integer number of vision service operations allocated each hour.
vision_services_capacity  30 Required when vision_services has been specified. The integer maximum number of vision service operations that can be accumulated. 
vs_max_per_event 3 Optional, default value is 1. The maximum number of vision service labeling operations per Event. This draws from the quota specified by vision_services_rate and vision_services_capacity.
video_upload_filter  0,1 Optional comma-separate list of integer Event importance levels to be filtered from uploading. 0 is no motion, 1 is unimportant, and 2 is important. So the video_upload_filter "0,1" will upload only important Events.
labels test,prod,hide Required comma-separated list of labels used to reference this Plan. Only Plans with the label "prod" appear by default on the page, so adding the label "prod" has the effect of publishing the Plan for all users. However, users see any plan to which they've previously subscribed unless you add the label "hide", which is a way to deprecate a plan that you no longer offer.
sha_video 1 Optional integer for the Secure Hash Algorithm (SHA) to be used to authenticate video. 1 or 256. Learn more.
extraction_height 1080 Optional y-axis height in pixels of the images to extract from video for object labeling and OCR analysis.
thumbnail_count 5 Optional maximum number of preview thumbnails to include in each Event summary.

You can send links to specific plans by including the ids of the plans in the #plans= hash of the /account page like,pro. If you want specific plans to appear by default only for particular users, then see the article "Can I offer particular subscriptions plans only to specific customers?"

Have more questions? Submit a request