post https://api.chartmogul.com/v1/subscription_events
Creates a subscription_event
object for the specified data_source
and customer
.
Examples
curl -X POST "https://api.chartmogul.com/v1/subscription_events" \
-u YOUR_API_KEY: \
-H "Content-Type: application/json" \
-d '{
"subscription_event":
{
"external_id": "evnt_026",
"customer_external_id": "scus_022",
"data_source_uuid": "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
"event_type": "subscription_start_scheduled",
"event_date": "2022-03-30",
"effective_date":"2022-04-01",
"subscription_external_id":"sub_0001",
"plan_external_id":"gold_monthly",
"currency":"USD",
"amount_in_cents":"1000",
"quantity":1
}
}'
ChartMogul::SubscriptionEvent.create!(
amount_in_cents: "1000",
currency: "USD",
customer_external_id: "scus_022",
data_source_uuid: "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
effective_date: "2022-04-01",
event_date: "2022-03-30",
event_type: "subscription_start_scheduled",
external_id: "evnt_026",
plan_external_id: "gold_monthly",
subscription_external_id: "sub_0001",
quantity:1
)
chartmogul.SubscriptionEvent.create(config, data={
'subscription_event' : {
'amount_in_cents' : 1000,
'currency' : 'USD',
'customer_external_id' : 'scus_022',
'data_source_uuid' : 'ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba',
'effective_date' : '2022-04-01',
'event_date' : '2022-03-30',
'event_type' : 'subscription_start_scheduled',
'external_id' : 'evnt_026',
'plan_external_id' : 'gold_monthly',
'quantity': 1,
'subscription_external_id' : 'sub_0001'
}
})
ChartMogul.SubscriptionEvent.create(config, {
subscription_event: {
amount_in_cents: "1000",
currency: "USD",
customer_external_id: "scus_022",
data_source_uuid: "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
effective_date: "2022-04-01",
event_date: "2022-03-30",
event_type: "subscription_start_scheduled",
external_id: "evnt_026",
plan_external_id: "gold_monthly",
subscription_external_id: "sub_0001",
quantity:1
}
})
api.CreateSubscriptionEvent(&cm.SubscriptionEvent{
AmountInCents 1000,
Currency: "USD",
CustomerExternalID: "scus_022",
DataSourceUUID: "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
EffectiveDate: "2022-04-01",
EventDate: "2022-03-30",
EventType: "subscription_start_scheduled",
ExternalID: "evnt_026",
PlanExternalID "gold_monthly",
Quantity 1,
SubscriptionExternalID: "sub_0001",
})
ChartMogul\SubscriptionEvent::create(['subscription_event' => [
"amount_in_cents" => 1000
"currency" => "USD",
"customer_external_id" => "cus_0003",
"data_source_uuid" => $ds->uuid,
"effective_date" => "2022-04-01",
"event_date" => "2022-03-30",
"event_type" => "subscription_start_scheduled",
"external_id" => "evnt_026",
"plan_external_id" => "plan_0001",
"quantity" => 1
"subscription_external_id" => "sub_0001",
]]);
Result Format
{
"id": 23223966,
"data_source_uuid": "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
"customer_external_id": "scus_022",
"subscription_set_external_id": null,
"subscription_external_id": "sub_0001",
"plan_external_id": "gold_monthly",
"event_date": "2022-03-30T00:00:00Z",
"effective_date": "2022-04-01T00:00:00Z",
"event_type": "subscription_start_scheduled",
"external_id": "evnt_026",
"errors":
{},
"created_at": "2022-03-31T11:42:18Z",
"updated_at": "2022-03-31T11:42:18Z",
"quantity": 1,
"currency": "USD",
"amount_in_cents": "1000",
"tax_amount_in_cents": 0,
"retracted_event_id": null
}
<ChartMogul::SubscriptionEvent:0x00000001313bf858
@data_source_uuid='ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba',
@customer_external_id='scus_022',
@subscription_set_external_id='',
@subscription_external_id='sub_0001',
@plan_external_id='gold_monthly',
@event_date='2022-03-30T00:00:00Z',
@effective_date='2022-04-01T00:00:00Z',
@event_type='subscription_start_scheduled',
@external_id='evnt_026',
@quantity=1,
@currency='USD',
@amount_in_cents='1000',
@id=23223966,
@errors={},
@created_at='2022-03-31T11:42:18Z',
@updated_at='2022-03-31T11:42:18Z',
@tax_amount_in_cents=nil,
@retracted_event_id=nil>
<SubscriptionEvent{
data_source_uuid='ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba',
customer_external_id='scus_022',
subscription_set_external_id='',
subscription_external_id='sub_0001',
plan_external_id='gold_monthly',
event_date='2022-03-30T00:00:00Z',
effective_date='2022-04-01T00:00:00Z',
event_type='subscription_start_scheduled',
external_id='evnt_026',
quantity=1,
currency='USD',
amount_in_cents='1000',
id=23223966,
errors={},
created_at='2022-03-31T11:42:18Z',
updated_at='2022-03-31T11:42:18Z',
tax_amount_in_cents=None,
retracted_event_id=None
}>
{
"id": 23223966,
"data_source_uuid": "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
"customer_external_id": "scus_022",
"subscription_set_external_id": null,
"subscription_external_id": "sub_0001",
"plan_external_id": "gold_monthly",
"event_date": "2022-03-30T00:00:00Z",
"effective_date": "2022-04-01T00:00:00Z",
"event_type": "subscription_start_scheduled",
"external_id": "evnt_026",
"errors":
{},
"created_at": "2022-03-31T11:42:18Z",
"updated_at": "2022-03-31T11:42:18Z",
"quantity": 1,
"currency": "USD",
"amount_in_cents": "1000",
"tax_amount_in_cents": 0,
"retracted_event_id": null
}
(*chartmogul.SubscriptionEvent)(0xc03201e5a1)({
ID: (uint64) 23223966
DataSourceUUID: (string) (len=39) "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba"
CustomerExternalID: (string) (len=8) "scus_022"
SubscriptionSetExternalID: (string) ""
SubscriptionExternalID: (string) (len=8) "sub_0001")
PlanExternalID: (string) (len=12) "gold_monthly"
EventDate: (string) (len=20) "2022-03-30T00:00:00Z")
EffectiveDate: (string) (len=20) "2022-04-01T00:00:00Z"
EventType: (string) (len=28) "subscription_start_scheduled"
ExternalID: (string) (len=8) "evnt_026"
Errors: (interface{}) {}
CreatedAt: (string) (len=20) "2022-03-31T11:42:18Z"
UpdatedAt: (string) (len=20) "2022-03-31T11:42:18Z"
Quantity: (int32) 1
Currency: (string) (len=3) "USD")
AmountInCents: (int32) 1000
TaxAmountInCents: (int32) 0
RetractedEventId: (string) ""
})
<?php
ChartMogul\SubscriptionEvent::__set_state(array(
"id" => 23223966,
"data_source_uuid" => "ds_1fm3eaac-62d0-31ec-clf4-4bf0mbe81aba",
"customer_external_id" => "scus_022",
"subscription_set_external_id" => NULL,
"subscription_external_id" => "sub_0001",
"plan_external_id" => "gold_monthly",
"event_date" => "2022-03-30T00:00:00Z",
"effective_date" => "2022-04-01T00:00:00Z",
"event_type" => "subscription_start_scheduled",
"external_id" => "evnt_026",
"errors" => array(),
"created_at" => "2022-03-31T11:42:18Z",
"updated_at" => "2022-03-31T11:42:18Z",
"quantity" => 1,
"currency" => "USD",
"amount_in_cents" => "1000",
"tax_amount_in_cents" => 0,
"retracted_event_id" => NULL
));
?>
Subscription Event Types
The table below lists the subscription event types for the event_type
attribute.
Subscription Event Type | Description |
---|---|
subscription_start | Event type that should be sent when a subscription begins immediately before an invoice is generated. This invoice will be generated at the start of the next billing cycle. |
subscription_start_scheduled | Event type that should be sent when a subscription is scheduled to start on a future date. |
scheduled_subscription_start_retracted | Event type that should be sent when a scheduled start to a new subscription is subsequently withdrawn. |
subscription_cancelled | Event type that should be sent when a subscription gets canceled. |
subscription_cancellation_scheduled | Event type that should be sent when a subscription cancellation is scheduled for a future date. |
scheduled_subscription_cancellation_retracted | Event type that should be sent when a scheduled cancellation to a subscription is subsequently withdrawn. |
subscription_updated | Event type that should be sent when a subscription is upgraded or downgraded and the change is effective immediately before an invoice is generated. This invoice will be generated at the start of the next billing cycle. |
subscription_update_scheduled | Event type that should be sent when an update of an existing subscription is scheduled for a future date. |
scheduled_subscription_update_retracted | Event type that should be sent when a scheduled update (e.g., upgrade or downgrade) to a subscription is subsequently withdrawn. |
subscription_event_retracted | Event type that should be sent when a scheduled event is retracted before it takes effect on the subscription. In this case, the request should have the external id of the corresponding scheduled event in the request. |