NAV Navbar
Request Response
  • Introduction To AccessType
  • Subscriber Identities
  • Subscription Groups
  • Subscriptions
  • Recurring Subscriptions
  • Subscription Gifts
  • Campaigns
  • Pay Per Asset
  • Assets
  • Subscriber Wallets
  • Coupon codes
  • Invoices
  • Subscriber Referral Voucher
  • [DEPRECATED] For Platform Customers
  • Release Notes
  • Introduction To AccessType

    AccessType is a product for managing subscriptions and access control.

    Detailed documentation is now available here

    Subscriber Identities

    A subscriber is identified by a pair of a provider and an identity (such as [email,dev@quintype.com], or [facebook, fb-id]). A subscriber can have many identities. A provider is an external system. It can be one of [email, quintype, facebook, twitter].

    Most APIs will accept the primary identity via URL parameters, and will also accept query parameters alternate_provider and alternate_identity, which will be used in case the user is not found at the primary identity.

    LIST Subscriber Identities for a user

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriber_identities.json
    
    
    {
      "subscriber_identities": [
        {
          "provider": "email",
          "value": "deepak@gmail.com"
        },
        {
          "provider": "quintype",
          "value": "8759"
        }
      ]
    }
    

    This API will list out all the identities for a user.

    POST Create a Subscriber Identity for a user

    curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriber_identities.json -d '{
      "subscriber_identity:" {
        "provider": "email",
        "value": "asim2@gmail.com"
      }
    }'
    
    {
    "subscriber_identities":[{
        "provider":"email",
        "value":"asim2@gmail.com"
      },
      {
        "provider":"email",
        "value":"asim@quintype.com"
      }]
    }
    

    This API can be used to add an Identity for an existing subscriber

    Subscription Groups

    LIST all Subscription Groups

    $ curl -H "X-SUBAUTH: <your-auth-token>" https://www.accesstype.com/api/v1/subscription_groups.json
    
    
    {
      "subscription_groups": [{
        "id": 25,
        "account_id": 2,
        "name": "print",
        "description": "Digital + Print",
        "assets": [{
           "id":5,
           "asset_category_id":1,
           "metadata":{},
           "title":"public",
           "type":"site"
         }],
        "subscription_type": "individual",
        "public": true,
        "created_at": "2017-09-04T09:05:06.035Z",
        "updated_at": "2017-09-07T10:21:21.109Z",
        "deleted_at": null,
        "preferred_identity_provider": "email",
        "metadata_fields": [
          "full-name",
          "email",
          "mobile-or-contact-number",
          "street-or-apartment",
          "area-or-locality",
          "city-or-village-and-state",
          "pin-code",
          "country"
        ],
        "subscription_plans": [{
          "id": 23,
          "subscription_group_id": 25,
          "duration_length": 3,
          "price_cents": 34900,
          "price_currency": "INR",
          "additional_assets": [],
          "created_at": "2017-09-04T09:05:06.047Z",
          "updated_at": "2017-09-04T09:05:06.047Z",
          "duration_unit": "months",
          "description": null,
          "title": "print-3",
          "max_trial_period_length": null,
          "max_trial_period_unit": null,
          "recurring": false,
          "metadata": {}
        }]
      }]
    }
    

    This API will list out all public subscription groups

    GET a Subscription Group

    $ curl -H "X-SUBAUTH: <your-auth-token>" https://www.accesstype.com/api/v1/subscription_groups/<group-id>.json
    
    
    {
      "subscription_group": {
        "id": 25,
        "account_id": 2,
        "name": "print",
        "description": "Digital + Print",
        "assets": [{
           "id":5,
           "asset_category_id":1,
           "metadata":{},
           "title":"public",
           "type":"site"
         }],
        "subscription_type": "individual",
        "public": true,
        "created_at": "2017-09-04T09:05:06.035Z",
        "updated_at": "2017-09-07T10:21:21.109Z",
        "deleted_at": null,
        "preferred_identity_provider": "email",
        "metadata_fields": [
          "full-name",
          "email",
          "mobile-or-contact-number",
          "street-or-apartment",
          "area-or-locality",
          "city-or-village-and-state",
          "pin-code",
          "country"
        ],
        "subscription_plans": [{
          "id": 23,
          "subscription_group_id": 25,
          "duration_length": 3,
          "price_cents": 34900,
          "price_currency": "INR",
          "additional_assets": [],
          "created_at": "2017-09-04T09:05:06.047Z",
          "updated_at": "2017-09-04T09:05:06.047Z",
          "duration_unit": "months",
          "description": null,
          "title": "print-3",
          "max_trial_period_length": null,
          "max_trial_period_unit": null,
          "recurring": false,
          "metadata": {}
        }]
      }
    }
    

    This will fetch a subscription, either a public or private one

    Subscriptions

    Subscription plan and Payment information is required to create a subscription for a user. payment-type can be one of razorpay, razorpay_recurring, androidpay, androidpay_recurring. It can also be set to manual to create subscriptions not involving payments.

    LIST Subscriptions for a user

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions.json
    
    
    
    {
      "subscriptions": [
        {
          "subscriber": {
            "id": 1087,
            "name": null,
            "created_at": "2019-08-14T09:43:57.557Z",
            "updated_at": "2019-08-14T09:43:57.557Z",
            "metadata": null,
            "cumulative_end_timestamps": {
                "standard_subscriptions_cumulative_end_timestamp": "2019-09-14T09:43:57.801Z",
                "campaign_subscriptions_cumulative_end_timestamp": "2020-04-14T09:45:02.183Z"
            },
            "subscriber_identities": [
                {
                    "provider": "email",
                    "value": "foo@example.com"
                },
                {
                    "provider": "quintype",
                    "value": "123"
                }
            ]
          },
          "invoices": [
            {
              "amount_after_discount_before_tax": "122.03",
              "amount_currency": "INR",
              "id": 990,
              "invoice_taxes": {
                "SGST": {
                  "percentage": "9.0",
                  "amount": "10.98",
                  "currency": "INR"
                },
                "CGST": {
                  "percentage": "9.0",
                  "amount": "10.98",
                  "currency": "INR"
                }
              },
              "amount_cents": 14400,
              "base_price": "152.54",
              "sequenced_invoice_number": "BQ/1819/SUB/167",
              "discount_details": {
                "code": "UAT",
                "discount_percentage": 20,
                "discount_amount": "30.51"
              },
              "created_at": "2018-12-12T10:25:48.590Z"
            }
          ],
          "id": 713,
          "subscriber_id": 453,
          "subscription_plan_id": 16,
          "created_at": "2017-10-30T10:55:42.201Z",
          "updated_at": "2017-10-30T10:55:42.201Z",
          "assets": [
            {
              "metadata": {},
              "title": "public",
              "type": "site"
            }
          ],
          "start_timestamp": "2017-10-30T10:55:42.176Z",
          "end_timestamp": "2017-11-13T10:55:42.176Z",
          "deleted_at": null,
          "payment_id": 668,
          "metadata": {
            "Name": "Sample User",
            "Address": "Sample add",
            "Phone Number": "1111111111"
          },
          "external_id": null,
          "trial_period_length": null,
          "trial_period_unit": null,
          "coupon_code": null,
          "subscription_group_id": 21,
          "preferred_identity": {
            "provider": "email",
            "value": "sample@gmail.com"
          },
          "group_name": "Sub Group 1",
          "plan_name": "Sub Plan 1",
          "duration_length": 2,
          "duration_unit": "weeks",
          "subscription_type": "individual",
          "active": true,
          "payment_amount": "0.00",
          "payment_type": "manual",
          "renewable": true,
          "coupon_code_id": 6,
          "discount_detail": {
            "code": "TEST20",
            "discount_type": "percent",
            "title": "Test coupon gives 20 percent off",
            "value": 20.0,
            "discounted_price_cents": 8000.0,
            "price_cents": 10000,
            "price_currency": "USD"
          },
        "expires_in_days": 30
        }
      ]
    }
    

    This API will list out all the subscriptions for a user. In order to get only active subscriptions, param active_only=true can be used.

    POST Preview a Subscription

    curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" -X POST https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions/preview.json -d '{
        "subscription": {
            "notes": "enter your notes",
            "alternate_provider": "email",
            "alternate_identity": "hey@quintype.com",
            "subscription_type": "standard",
            "subscription_plan_id": 2118,
            "coupon_code": "UAT",
            "payment": {
                "payment_type": "razorpay",
                "amount_cents": 14400,
                "amount_currency": "INR"
            },
            "metadata": {
                "mobile_number": "7639817688"
            }
        },
        "fingerprint": ""
    }'
    
    {
        "subscription": {
            "subscriber": {
                "id": 1087,
                "name": 'foo',
                "created_at": "2019-08-14T09:43:57.557Z",
                "updated_at": "2019-08-14T09:43:57.557Z",
                "metadata": null,
                "cumulative_end_timestamps": {
                    "standard_subscriptions_cumulative_end_timestamp": null,
                    "campaign_subscriptions_cumulative_end_timestamp": null
                },
                "subscriber_identities": [
                    {
                        "provider": "email",
                        "value": "foo@example.com"
                    },
                    {
                        "provider": "quintype",
                        "value": "123"
                    }
                ]
            },
            "notes": "enter your notes",
            "invoices": [],
            "next_payment_due_date": null,
            "deleted_at": null,
            "campaign_name": null,
            "payment_amount_currency": "INR",
            "campaign_subscription": false,
            "campaign_id": null,
            "start_timestamp": "2021-08-07T11:28:46.271Z",
            "assets": [
                {
                    "title": "Site",
                    "metadata": {},
                    "type": "site"
                },
                {
                    "title": "Monthly magazines",
                    "metadata": {},
                    "type": "static"
                },
                {
                    "title": "All exclusive reportage content",
                    "metadata": {
                        "access_level": 400
                    },
                    "type": "story"
                },
                {
                    "title": "All paid stories",
                    "metadata": {
                        "access_level": 300
                    },
                    "type": "story"
                },
                {
                    "title": "All Story",
                    "metadata": {
                        "access_level": "999"
                    },
                    "type": "story"
                }
            ],
            "end_timestamp": "2021-11-07T11:28:46.271Z",
            "payment_amount": "144.00",
            "discount_detail": {
                "code": "UAT",
                "discount_type": "percent",
                "title": "UAT Trial",
                "value": 20,
                "discounted_price_cents": 14400,
                "price_cents": 18000,
                "price_currency": "INR"
            },
            "duration_length": 3,
            "dynamic_assets": {},
            "trial_period_length": null,
            "group_description": "Silver + Access to Exclusive Reportage + Monthly round-up magazines",
            "renewable": false,
            "subscription_attempt_id": null,
            "subscription_group_id": 2197,
            "coupon_code": "UAT",
            "recurring": false,
            "payment_type": "preview",
            "cancelled": false,
            "payment_token": null,
            "updated_at": null,
            "coupon_code_id": 82,
            "plan_amount_cents": 18000,
            "status": "pending",
            "group_name": "Unlimited",
            "external_id": null,
            "active": false,
            "id": null,
            "plan_occurrence": "One Time",
            "in_grace_period": false,
            "code": null,
            "preferred_identity": {
                "provider": "email",
                "value": "vamsi@quintype.com"
            },
            "plan_amount_currency": "INR",
            "expired": false,
            "payment_id": null,
            "plan_name": "3 months",
            "subscription_plan_id": 2118,
            "duration_unit": "months",
            "trial_period_unit": null,
            "subscription_type": "standard",
            "plan_description": "All assets ",
            "cancelled_at": null,
            "metadata": {
                "mobile_number": "7639817688"
            },
            "renewal_reminder_sent_date": null,
            "created_at": null,
            "subscriber_id": 9311,
            "payment_amount_cents": 14400
        },
        "attempt_token": "WnwxA2AVrE3xqcDUqrSb3sNm",
        "external_reference_id": null
    }
    

    It returns a preview for a Subscription, without creating a new subscription. For a successful subscription, it also return an attempt_token.

    An attempt_token is the identifier of a subscription attempt. It should be sent back with create subscription api to mark an attempt as success.

    This API must be used before accepting payment from a user.

    One can pass the value for payment.payment_type as razorpay_recurring when making the preview API call to get external_reference_id and attempt_token in response.

    POST Create a Subscription

    curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" -X POST https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions.json -d '{
        "subscription": {
            "notes": "enter your notes",
            "subscription_type": "standard",
            "subscription_plan_id": 2118,
            "coupon_code": "UAT",
            "payment": {
                "payment_type": "razorpay",
                "amount_cents": 14400,
                "amount_currency": "INR",
                "payment_token": "pay_BWpQWQcLLK3L37"
            },
            "metadata": {
                "mobile_number": "7639817688"
            }
        },
        "alternate_provider": "email",
        "alternate_identity": "hey@quintype.com",
        "attempt_token": "WnwxA2AVrE3xqcDUqrSb3sNm"
    }'
    
    {
        "subscription": {
            "subscriber": {
                "id": 1087,
                "name": 'foo',
                "created_at": "2019-08-14T09:43:57.557Z",
                "updated_at": "2019-08-14T09:43:57.557Z",
                "metadata": null,
                "cumulative_end_timestamps": {
                    "standard_subscriptions_cumulative_end_timestamp": "2019-09-14T09:43:57.801Z",
                    "campaign_subscriptions_cumulative_end_timestamp": null
                },
                "subscriber_identities": [
                    {
                        "provider": "email",
                        "value": "foo@example.com"
                    },
                    {
                        "provider": "quintype",
                        "value": "123"
                    }
                ]
            },
            "expires_in_days": 30,
            "notes": "enter your notes",
            "invoices": [
                {
                    "amount_after_discount_before_tax": "122.03",
                    "amount_currency": "INR",
                    "id": 990,
                    "invoice_taxes": {
                        "SGST": {
                            "percentage": "9.0",
                            "amount": "10.98",
                            "currency": "INR"
                        },
                        "CGST": {
                            "percentage": "9.0",
                            "amount": "10.98",
                            "currency": "INR"
                        }
                    },
                    "amount_cents": 14400,
                    "base_price": "152.54",
                    "sequenced_invoice_number": "BQ/1819/SUB/167",
                    "discount_details": {
                        "code": "UAT",
                        "discount_percentage": 20,
                        "discount_amount": "30.51"
                    },
                    "created_at": "2018-12-12T10:25:48.590Z"
                }
            ],
            "next_payment_due_date": null,
            "deleted_at": null,
            "campaign_name": null,
            "payment_amount_currency": "INR",
            "campaign_subscription": false,
            "campaign_id": null,
            "start_timestamp": "2021-08-07T11:28:46.271Z",
            "assets": [
                {
                    "title": "Site",
                    "metadata": {},
                    "type": "site"
                },
                {
                    "title": "Monthly magazines",
                    "metadata": {},
                    "type": "static"
                },
                {
                    "title": "All exclusive reportage content",
                    "metadata": {
                        "access_level": 400
                    },
                    "type": "story"
                },
                {
                    "title": "All paid stories",
                    "metadata": {
                        "access_level": 300
                    },
                    "type": "story"
                },
                {
                    "title": "All Story",
                    "metadata": {
                        "access_level": "999"
                    },
                    "type": "story"
                }
            ],
            "end_timestamp": "2021-11-07T11:28:46.271Z",
            "payment_amount": "144.00",
            "discount_detail": {
                "code": "UAT",
                "discount_type": "percent",
                "title": "UAT Trial",
                "value": 20,
                "discounted_price_cents": 14400,
                "price_cents": 18000,
                "price_currency": "INR"
            },
            "duration_length": 3,
            "dynamic_assets": {},
            "trial_period_length": null,
            "group_description": "Silver + Access to Exclusive Reportage + Monthly round-up magazines",
            "renewable": false,
            "subscription_attempt_id": 96595,
            "subscription_group_id": 2197,
            "coupon_code": "UAT",
            "recurring": false,
            "payment_type": "razorpay",
            "cancelled": false,
            "payment_token": "pay_BWpQWQcLLK3L37",
            "updated_at": "2018-12-12T10:25:48.494Z",
            "coupon_code_id": 82,
            "plan_amount_cents": 18000,
            "status": "pending",
            "group_name": "Unlimited",
            "external_id": null,
            "active": false,
            "id": 32405,
            "plan_occurrence": "One Time",
            "in_grace_period": false,
            "code": null,
            "preferred_identity": {
                "provider": "quintype",
                "value": "251933"
            },
            "plan_amount_currency": "INR",
            "expired": false,
            "payment_id": 32379,
            "plan_name": "3 months",
            "subscription_plan_id": 2118,
            "duration_unit": "months",
            "trial_period_unit": null,
            "subscription_type": "standard",
            "plan_description": "All assets ",
            "cancelled_at": null,
            "metadata": {
                "mobile_number": "7639817688"
            },
            "renewal_reminder_sent_date": null,
            "created_at": "2018-12-12T10:25:48.494Z",
            "subscriber_id": 9311,
            "payment_amount_cents": 14400
        }
    }
    

    This API can be used to create a subscription.

    Here attempt_token is the token received from preview.

    Use campaign_id optional field to create subscription for specific campaign.

    It returns a Subscription Object in response

    PATCH update attributes

    curl -H "X-SUBAUTH: <auth-token>" -X PATCH -H "Content-Type: application/json" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions/<id>.json -d '{
      "subscription": {
        "metadata":  {
            "full-name": "hello-world",
            "email": "hello@quintype.com"
        }
      }
    }'
    

    This API can be used to update the attributes for a subscription of a subscriber

    PATCH bulk update attributes

    curl -H "X-SUBAUTH: <auth-token>" -X PATCH -H "Content-Type: application/json" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions.json -d '{
      "metadata":  {
        "full-name": "hello-world",
        "email": "hello@quintype.com"
      }
    }'
    

    This API can be used to update the attributes of all active subscriptions of a subscriber

    DELETE a subscription

    curl -H "X-SUBAUTH: <auth-token>" -X "DELETE" -H "Content-Type: application/json" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions/<subscription-id>.json
    

    This API can be used to delete a subscription(THIS API WILL BE DEPRECATED SOON IN FAVOUR OF CANCEL Subscription API)

    CANCEL a subscription

    curl -H "X-SUBAUTH: <auth-token>" -X "PUT" -H "Content-Type: application/json" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions/<subscription-id>/cancel.json
    

    This API can be used to cancel a subscription

    POST renew a subscription

    curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" -X POST https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions/<subscription_id>/renewals.json -d '{
      "subscription": {
        "coupon_code": "",
        "payment": {
            "payment_type": "razorpay",
            "payment_token": "pay_test_8tNiqdiajurOkj",
            "amount_cents": "99900",
            "amount_currency": "INR"
        }
      },
      "alternate_provider": "email",
      "alternate_identity": "hey@quintype.com"
    }'
    

    This API can be used to renew any renewable subscription. Subscriptions to recurring-plans are not renewable. The new subscription starts immediately or at the end of active subscription.

    One can use the optional metadata field to set it different from that of the existing subsription. If not passed, it is set to be same as existing subscription.

    It returns a Subscription Object in response

    Recurring Subscriptions

    In order to register a recurring subscription with some providers (such as razorpay), it is mandatory to register a subscription upstream.

    POST register a recurring subscription

    curl -H "X-SUBAUTH: <auth-token>" -X POST -H "Content-Type: application/json" https://www.accesstype.com/api/v1/subscription_plans/<subscription-plan-id>/external_subscription_token.json -d '{
      "type": "razorpay",
      "attempt_token": "fo4bMWjP6N5vtVySNtiAUNBQ"
    }'
    
    {
      "subscription": {
        "id": "sub_8tQNd3qURQJiK5"
      }
    }
    

    attempt_token is optional param and must be sent if the external subscription is not to start immediately.

    NOTE:- This API will soon be deprecated, as the same can now be achieved by preview API.

    Trial period for a recurring subscription

    Trial period is available for a recurring subscription. In order to create a subscription with trial, you need to enable trial period in the subscription plan.

    Accesstype Subscription Plan Enable Trial Period

    If you create a subscription by a subscription plan which has trial period enabled, only authorization amount of 5 rs will be charged to the customer, which will be refunded. And at the end of trial period duration, first subscription charge will occur.

    By default the subscription's trial period duration is taken from the trial period duration specified in the plan

    However you can customize the trial period. You need to send the following keys in the subscription object, if you don't want the default trial period of the subscription plan

    "trial_period_length": 2, "trial_period_unit": "weeks"

    The valid trial period units are days, weeks, months, years

    Note: The trial period duration in the subscription should be less than or equal to trial period configured in the subscription plan

    If you don't want to give a trial period for a subscription plan, which has trial period configured. You need to send "trial_period": false in the subscription object

    Subscription Gifts

    POST Create a Subscription for gifting

    curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" -X POST https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions.json -d '{
      "recipient_subscriber": {
        "recipient_identity_provider": "email",
        "recipient_identity": "friend@example.com"
      },
       "subscription": {
            "notes": "enter your notes",
            "subscription_type": "standard",
            "subscription_plan_id": 2118,
            "coupon_code": "UAT",
            "payment": {
                "payment_type": "razorpay",
                "amount_cents": 14400,
                "amount_currency": "INR",
                "payment_token": "pay_BWpQWQcLLK3L37"
            },
            "metadata": {
                "mobile_number": "7639817688"
            }
        },
        "alternate_provider": "email",
        "alternate_identity": "hey@quintype.com",
        "attempt_token": "WnwxA2AVrE3xqcDUqrSb3sNm"
    }'
    
    {
      "subscription": {
        "id": 104273,
        "subscriber_id": 101788,
        "subscription_plan_id": 19781,
        "created_at": "2020-01-20T09:09:15.988Z",
        "updated_at": "2020-01-20T09:09:15.988Z",
        "assets": [],
        "start_timestamp": "2020-01-20T09:09:15.943Z",
        "end_timestamp": "2020-01-27T09:09:15.943Z",
        "deleted_at": null,
        "payment_id": 104440,
        "metadata": {
          "mobile_number": "8892665215"
        },
        "external_id": null,
        "trial_period_length": null,
        "trial_period_unit": null,
        "campaign_id": null,
        "plan_amount_cents": 0,
        "plan_amount_currency": "INR",
        "duration_unit": "weeks",
        "duration_length": 1,
        "plan_name": "Gold - 3 months",
        "plan_description": "Price 0",
        "group_name": "Gold",
        "group_description": "Gold plan",
        "subscription_type": "standard",
        "plan_occurrence": "One Time",
        "subscription_attempt_id": 184597,
        "renewal_reminder_sent_date": null,
        "dynamic_assets": {},
        "coupon_discount_id": null,
        "notes": null,
        "subscription_group_id": 8686,
        "preferred_identity": {
          "provider": "email",
          "value": "friend@example.com"
        },
        "active": true,
        "payment_amount": "0.00",
        "payment_amount_cents": 0,
        "payment_amount_currency": "INR",
        "payment_type": "sponsored",
        "payment_token": null,
        "renewable": false,
        "status": "active",
        "expired": false,
        "coupon_code": null,
        "recurring": false,
        "cancelled_at": null,
        "next_payment_due_date": null,
        "cancelled": false,
        "in_grace_period": false,
        "invoices": [
          {
            "id": 71623,
            "sequenced_invoice_number": "Kihn28241",
            "base_price": "0",
            "amount_cents": 0,
            "amount_currency": "INR",
            "created_at": "2020-01-20T09:09:16.117Z",
            "amount_after_discount_before_tax": "0",
            "discount_details": {},
            "invoice_taxes": {
              "Milagros": {
                "percentage": "9.0",
                "amount": "0",
                "currency": "INR"
              },
              "Xiao": {
                "percentage": "9.0",
                "amount": "0",
                "currency": "INR"
              },
              "Dwight": {
                "percentage": "9.0",
                "amount": "0",
                "currency": "INR"
              },
              "Ardath": {
                "percentage": "9.0",
                "amount": "0",
                "currency": "INR"
              }
            },
            "round_off": "0",
            "external_payment_id": null,
            "downloadable": false
          }
        ],
        "subscriber_name": null,
        "discount_detail": {},
        "referrer": null,
        "gifter": {
          "id": 101663,
          "name": "Gifter",
          "email": "gifter@example.com"
        },
        "created_by": null,
        "subscriber": {
          "id": 101788,
          "name": null,
          "created_at": "2020-01-20T09:09:14.557Z",
          "updated_at": "2020-01-20T09:09:14.557Z",
          "metadata": null,
          "cumulative_end_timestamps": {
            "standard_subscriptions_cumulative_end_timestamp": "2020-01-27T09:09:15.943Z",
            "campaign_subscriptions_cumulative_end_timestamp": "2020-01-27T09:09:15.943Z"
          },
          "subscriber_identities": [
            {
              "provider": "email",
              "value": "friend@example.com"
            }
          ]
        },
        "expires_in_days": 7,
        "in_trial_period": false
      }
    }
    

    This API can be used to create a subscription and gift it to a recipient_subscriber. recipient_subscriber details are required. It returns a Subscription Object in response

    LIST Subscriptions gifted by a user

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscription_gifts.json
    
    
    {
     "subscriptions":[
      {
         "id":713,
         "subscriber_id":453,
         "subscription_plan_id":16,
         "created_at":"2017-10-30T10:55:42.201Z",
         "updated_at":"2017-10-30T10:55:42.201Z",
         "assets":[
    
         ],
         "start_timestamp":"2017-10-30T10:55:42.176Z",
         "end_timestamp":"2017-11-13T10:55:42.176Z",
         "deleted_at":null,
         "payment_id":668,
         "metadata":{
            "Name":"Sample User",
            "Address":"Sample add",
            "Phone Number":"1111111111"
         },
         "external_id":null,
         "trial_period_length":null,
         "trial_period_unit":null,
         "coupon_code":null,
         "subscription_group_id":21,
         "preferred_identity":{
            "provider":"email",
            "value":"sample@gmail.com"
         },
         "group_name":"Sub Group 1",
         "plan_name":"Sub Plan 1",
         "duration_length":2,
         "duration_unit":"weeks",
         "subscription_type":"individual",
         "active":true,
         "payment_amount":"0.00",
         "payment_type":"manual",
         "renewable": true
        }
      ]
    }
    

    Campaigns

    LIST all Campaigns

    $ curl -H "X-SUBAUTH: <your-auth-token>" https://www.accesstype.com/api/v1/campaigns.json
    
    {
        "subscription_groups": [{
            "id": 9,
            "account_id": 2,
            "name": "Campaign",
            "description": "Campaign",
            "subscription_type": "campaign",
            "public": true,
            "created_at": "2019-12-12T09:26:05.418Z",
            "updated_at": "2020-01-03T05:33:05.130Z",
            "deleted_at": null,
            "preferred_identity_provider": "email",
            "metadata_fields": [],
            "currency": "INR",
            "target_amount": 1070200,
            "target_amount_validation_enabled": true,
            "assets": [],
            "display_assets": [],
            "subscription_plans": [{
                    "id": 76,
                    "subscription_group_id": 9,
                    "duration_length": 1,
                    "price_cents": 100000,
                    "price_currency": "INR",
                    "created_at": "2019-12-23T10:44:45.659Z",
                    "updated_at": "2019-12-23T10:44:45.659Z",
                    "duration_unit": "years",
                    "description": "qwerty",
                    "title": "Plan 2",
                    "max_trial_period_length": null,
                    "max_trial_period_unit": null,
                    "recurring": false,
                    "metadata": {},
                    "deleted_at": null,
                    "enabled": true,
                    "trial_period_enabled": false,
                    "supported_payment_providers": [],
                    "assets": [],
                    "display_assets": []
                },
                {
                    "id": 49,
                    "subscription_group_id": 9,
                    "duration_length": 1,
                    "price_cents": 5000,
                    "price_currency": "INR",
                    "created_at": "2019-12-12T09:33:39.024Z",
                    "updated_at": "2019-12-12T09:33:39.024Z",
                    "duration_unit": "weeks",
                    "description": "Camp Door",
                    "title": "Camp Door",
                    "max_trial_period_length": null,
                    "max_trial_period_unit": null,
                    "recurring": false,
                    "metadata": {},
                    "deleted_at": null,
                    "enabled": true,
                    "trial_period_enabled": false,
                    "supported_payment_providers": [],
                    "assets": [{
                        "title": "Asset Site",
                        "metadata": {},
                        "type": "site"
                    }],
                    "display_assets": [{
                        "title": "Asset Site",
                        "metadata": {},
                        "type": "site"
                    }]
                }
            ]
        }]
    }
    

    This API will list out all campaign subscriptions that are set up for the account.

    Pay Per Asset

    List Prices of Assets

    curl -H "X-SUBAUTH: <auth-token>" -X GET 'http://www.accesstype.com/api/v1/asset/<asset-type>/pricing_plans.json?id=123456&collection_id[]=123&collection_id[]=456>'
    
    {
        "pricing_plans": [
            {
                "id": 1071,
                "price_cents": 1400,
                "price_currency": "INR",
                "duration_length": 1,
                "duration_unit": "lifetime"
            },
            {
                "id": 1959,
                "price_cents": 1000,
                "price_currency": "INR",
                "duration_length": 1,
                "duration_unit": "months"
            }
        ]
    }
    

    This API returns the prices of a story or a collection when sold individually.

    Parameter Type Occurrence Description
    /<asset-type>/ string 1 The type of asset that is being purchased. Valid Values for Quintype CMS story,collection
    id string 1 The identifier of the story or collection that is being purchased.
    collection_id[] string 0 or many The identifier of the collection that the story belongs to. Used when the value of /<asset-type>/ is story.

    Create Asset Purchase API

    curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" -X POST http://www.accesstype.com/api/v1/subscribers/email/myid@example.com/subscriptions.json -d '{
      "subscription": {
        "subscription_type": "dynamic_asset",
        "subscription_plan_id": <pricing-plan-id>,
        "payment": {
          "payment_type": "simpl"
        },
        "metadata":  {
          "full-name": "hello",
          "email": "hello@quintype.com"
        },
        "dynamic_assets": [{
            "id": "some_asset_id"
         }]
      },
      "alternate_provider": "email",
      "alternate_identity": "hey@quintype.com",
      "attempt_token": "fo4bMWjP6N5vtVySNtiAUNBQ",
      "name": "Ben"
    }
    

    Assets

    LIST All Assets accessible to a user

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/assets.json
    
    
    
    {
       "assets":[
         {
           "metadata":{},
           "title":"public",
           "type":"site"
         }
       ]
    }
    
    

    Subscriber Wallets

    POST subscriber wallet token

    $ curl -H "X-SUBAUTH: <auth-token>" -H "Content-Type: application/json" -X POST https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriber_wallets.json -d '{
         "subscriber_wallet": {
            "provider": "simpl",
            "metadata": {
                "token": "8ashfsdfvyhurn8g9w85gjf"
            }
        }
     }'
    
    {
      "subscriber_wallet": {
        "provider": "simpl",
        "metadata": {
          "token": "thenashfsdfvyurn8g9w85gjf"
          }
        }
      }
    

    This request allows to POST a user's wallet token from any wallet provider. Examples of Providers: Simpl, PayTm

    Allowed values for subscriber_wallet.provider are simpl,paytm.

    Parameter Type Mandatory Description
    subscriber_wallet.provider string Yes Valid Values simpl,paytm
    subscriber_wallet.metadata object Yes Can have multiple key value pairs. Can be used to store tokens provided by wallet provider. E.g., "token": "8ashfsdfvyhurn8g9w85gjf"

    The request body is returned back in the response.

    LIST wallets of subscriber

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriber_wallets.json
    
    
    {
      "subscriber_wallets": [{
        "provider": "paytm_auto_debit",
        "metadata": {
          "exprires_at": "1517922233955"
          }
        },
        {
        "provider": "simpl",
        "metadata": {}
        }]
      }
    

    This API call returns all the wallets of a subscriber.

    DELETE wallets of subscriber

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriber_wallets.json -X DELETE
    
    

    This API deletes all the wallets of a subscriber.

    Coupon codes

    GET discount details for a subscription plan

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscription_plans/<subscription-plan-id>/coupon_codes/<code>/validate.json
    
    {
      "discount_details": {
        "code": "TEST100",
        "discount_type": "amount",
        "title": "test-100",
        "value": 1000,
        "discounted_price_cents": 28900,
        "price_cents": 29900,
        "price_currency": "INR"
      },
      "message": "Applied successfully"
    }
    

    It returns discount details for a active coupon code.

    Invoices

    GET invoice details for a subscription

    $ curl -H "X-SUBAUTH: <auth-token>"
    https://accesstype.com/api/v1/subscribers/<provider>/<identity>/subscriptions/<subscription_id>/invoices/<invoice_id>/download.json
    
    It returns the invoice.pdf file in pdf format
    

    This API is used to download the invoice in the pdf format.

    Invoice Template Variables

    The below format considers the price inclusive of taxes.

    Name Description
    user_name Name of the user in the accesstype who purchased the subscription
    invoice_number The sequence of invoice number for that account. Example: publisher_name/1, publiser_name/2
    user_email Email of the user in the accesstype who purchased the subscription
    date Date of purchase of subscription. Example: 11 Dec 2018
    payment_method Payment gateway used by the purchaser. Example: razorpay, simpl, paytm
    recurring true if it's a recurring subscription, false if it's a one time payment
    base_price Basic price is the amount receivable by the publisher from the user for the purchase of subscription minus any tax on the product.For example if 110 is the price paid by the user and 10 % if the tax specified by the admin. The base price is calculated by the following formula (110/(1+10/100)), which equals 100
    subscription_group_title The subscription group name, the subscription plan belongs to
    subscription_plan_title The subscription plan name, for which the user purchases a subscription
    subscription_plan_price The price of the subscription plan, specified by the admin without any discount applied
    amount_paid The amount received from the user. If the user applies a discount, discount is applied on the plan amount.
    discount_details It's a hash with following fields code - which represents the discount code applied by the user discount_percentage - which represents the percentage of discount applied discount_amount - which represents the amount of the discount Example: {"code" => "UAT","discount_percentage" => 20,"discount_amount" => "77.97"}
    taxes It's a hash with tax objects. If multiple taxes are specified by the admin, multiple tax objects will be present in this object {"SGST" => {"percentage" => "9.0","amount" => "28.07","currency" => "INR"}, "CGST" => {"percentage" => "9.0","amount" => "28.07","currency" => "INR"} }
    subscription_end_date Represents the end date of the subscription
    dynamic_assets This is applicable for pay per asset type of subscriptions. Suppose if user purchases a storytitle, slug will be available in this field Example: [{id: "some_asset_id", title: "Some title", slug: "/some-slug"}]
    amount_after_discount_before_tax This amount is arrived at, when discount is applied on the base price and does not include the tax amounts.
    round_off The amount that was rounded off in calculating the amount paid by the subscriber from the calculated base price, price after discount and taxes. Unit: Rupee for INR and dollar for USD.
    benefit_product This is the title of the befefit product that is added to referree, because he/she used a coupon code which has discount type unit
    notes If there are any notes made during the subscription creation

    Subscriber Referral Voucher

    Currently this feature is available only for accounts that use Voucherify

    Every subscriber has a referral voucher code that he can share with others.

    GET Referral voucher for a user

    $ curl -H "X-SUBAUTH: <auth-token>" https://www.accesstype.com/api/v1/subscribers/<provider>/<identity>/referral_voucher.json
    
    
    {
        "referral_voucher": {
            "provider": "voucherify",
            "code": "MY_REFERRAL",
            "subscriber_id": 998
        }
    }
    

    This API will return the referral voucher code for a user.

    It will accept the primary identity via URL parameters, and will also accept query parameters alternate_provider, alternate_identity and name.

    [DEPRECATED] For Platform Customers

    The below APIs are deprecated. Please use this instead.

    The customers of Quintype platform can use below APIs for subscriptions in Accesstype.

    [Deprecated] POST Preview a subscription without login

    curl -H "content-type: application/json" https://sketches.quintype.com/api/v1/members/me/subscriptions/preview-without-login -d '{
        "member": {
          "email": "example@gmail.com"
        },
        "subscription": {
          "subscription_plan_id": "11",
          "coupon_code": "NEWYEAR",
          "payment": {
              "payment_type": "razorpay",
              "amount_cents": "99900",
              "amount_currency": "INR"
          },
          "metadata":  {
              "full-name": "hello",
              "email": "hello@quintype.com"
          },
          "start_timestamp": "2017-09-21 00:00:00"
      }
    }
    '
    
    {
      "subscription": {
        "invoices": [],
        "next_payment_due_date": null,
        "deleted_at": null,
        "campaign_name": null,
        "payment_amount_currency": "INR",
        "campaign_subscription": false,
        "campaign_id": null,
        "start_timestamp": "2018-07-24T00:00:00.000Z",
        "assets": [
          {
            "title": "Asset Site Title",
            "metadata": {},
            "type": "site"
          }
        ],
        "end_timestamp": "2018-08-24T00:00:00.000Z",
        "payment_amount": "8.50",
        "discount_detail": {
          "code": "NEWYEAR",
          "discount_type": "percent",
          "title": "New Year offer",
          "value": 15,
          "discounted_price_cents": 850,
          "price_cents": 1000,
          "price_currency": "INR"
        },
        "duration_length": 1,
        "dynamic_assets": {},
        "trial_period_length": null,
        "group_description": "Subscription Group Description",
        "renewable": true,
        "subscription_attempt_id": null,
        "subscription_group_id": 4409,
        "coupon_code": "NEWYEAR",
        "recurring": false,
        "payment_type": "preview",
        "cancelled": false,
        "payment_token": null,
        "updated_at": null,
        "coupon_code_id": 81,
        "plan_amount_cents": 1000,
        "status": "expired",
        "group_name": "Test_Subscription_Group1544522619333",
        "external_id": null,
        "active": false,
        "id": null,
        "plan_occurrence": "One Time",
        "in_grace_period": false,
        "code": null,
        "preferred_identity": {
          "provider": "email",
          "value": "qa20Dec2018123234@quintype.com"
        },
        "plan_amount_currency": "INR",
        "expired": true,
        "payment_id": null,
        "plan_name": "Test ",
        "subscription_plan_id": 5594,
        "duration_unit": "months",
        "trial_period_unit": null,
        "subscription_type": "standard",
        "plan_description": "test",
        "cancelled_at": null,
        "metadata": {
          "mobile": "9844089877",
          "full-name": "hello",
          "email": "hello@quintype.com"
        },
        "renewal_reminder_sent_date": null,
        "created_at": null,
        "subscriber_id": 37104,
        "payment_amount_cents": 850
      },
      "attempt_token": "9r1Sctb2pyvocEkwhp1U5Sfq",
      "external_reference_id": null
    }
    

    This API can be used to preview a subscription when user is not logged in.

    It returns a preview for a Subscription, without creating a new subscription. For a successful subscription, it also return an attempt_token.

    An attempt_token is the identifier of a subscription attempt. It should be sent back with register & subscribe api or subscribe without login api to mark an attempt as success.

    We highly recommend use of this API before accepting payment form a user.

    [Deprecated] POST Preview a subscription for logged in user

    curl -H "X-QT-AUTH: <your-auth-token>" -H "content-type: application/json" https://sketches.quintype.com/api/v1/api/v1/members/me/subscriptions/preview -d '{
      "subscription": {
        "subscription_plan_id": "11",
        "coupon_code": "NEWYEAR",
        "payment": {
            "payment_type": "razorpay",
            "amount_cents": "99900",
            "amount_currency": "INR"
        },
        "metadata":  {
            "full-name": "hello",
            "email": "hello@quintype.com"
        },
        "start_timestamp": "2017-09-21 00:00:00"
      }
    }
    '
    
      {
        "subscription": {
            "id": null,
            "subscriber_id": 8302,
            "subscription_plan_id": 11,
            "created_at": null,
            "updated_at": null,
            "assets": [],
            "start_timestamp": "2218-09-29T19:54:02.833Z",
            "end_timestamp": "2318-09-29T19:54:02.833Z",
            "deleted_at": null,
            "payment_id": null,
            "metadata": {
              "full-name": "hello",
              "email": "hello@quintype.com"
            },
            "external_id": null,
            "trial_period_length": null,
            "trial_period_unit": null,
            "code": null,
            "discount_detail": {},
            "coupon_code_id": null,
            "campaign_id": null,
            "plan_amount_cents": 50000,
            "plan_amount_currency": "INR",
            "duration_unit": "lifetime",
            "duration_length": 1,
            "plan_name": "life time ",
            "plan_description": "life time ",
            "group_name": "prod test 30 aug",
            "group_description": "prod test 30 aug",
            "subscription_type": "standard",
            "plan_occurrence": "One Time",
            "subscription_attempt_id": null,
            "renewal_reminder_sent_date": null,
            "dynamic_assets": {},
            "subscription_group_id": 2313,
            "preferred_identity": {
                "provider": "email",
                "value": "biswajit+29@quintype.com"
            },
            "active": false,
            "payment_amount": "0.00",
            "payment_amount_cents": 0,
            "payment_amount_currency": "USD",
            "payment_type": "manual",
            "payment_token": null,
            "renewable": false,
            "status": "pending",
            "expired": false,
            "coupon_code": "NEWYEAR,
            "campaign_name": null,
            "campaign_subscription": false,
            "recurring": false,
            "cancelled_at": null,
            "next_payment_due_date": null,
            "cancelled": false,
            "in_grace_period": false
        },
        "attempt_token": "SSLvhLBEWiMxcEiMKgHxATpJ",
        "external_reference_id": null
    }
    

    It returns a preview for a Subscription, without creating a new subscription. For a successful subscription, it also return an attempt_token.

    An attempt_token is the identifier of a subscription attempt. It should be sent back with create-subscription api.

    We highly recommend use of this API before accepting payment form a user.

    [Deprecated] POST Register And Subscribe without login

    curl -H "X-QT-AUTH: sample-auth" -H "Content-Type: application/json" http://sketches.quintype.com/api/v1/register-and-subscribe -d '{
       "member": {
            "email": "ace33@quintype.com",
            "username": "ace 33",
            "password": "password",
            "name": "ace 33",
            "dont-login": false
        },
        "options": {
            "gateway-name": "razorpay"
        },
        "payment": {
            "attributes": {
                "currency": "INR",
                "amount": 100,
                "payment-type": "Razorpay",
                "gateway-payment-id": "pay_123trt465",
                "attributes": ""
            }
        },
        "subscription": {
            "accesstype-plan-id": 4,
            "metadata": {
              "city": "Bangalore",
              "state": "Karnataka",
              "house": "Old Airport Road, Murugeshpallya, Bangalore",
              "street": "Old Airport Road, Murugeshpallya, Bangalore",
              "landmark": "Karnataka",
              "pincode": "560017",
              "mobile": "8129612361"
             },
             "coupon-code": "HOLI"
        },
        "attempt-token": "attempt-token"}
    '
    
    
    {
        "subscription": {
            "invoices": [
                {
                    "amount_after_discount_before_tax": "122.03",
                    "amount_currency": "INR",
                    "id": 990,
                    "invoice_taxes": {
                        "SGST": {
                            "percentage": "9.0",
                            "amount": "10.98",
                            "currency": "INR"
                        },
                        "CGST": {
                            "percentage": "9.0",
                            "amount": "10.98",
                            "currency": "INR"
                        }
                    },
                    "amount_cents": 14400,
                    "base_price": "152.54",
                    "sequenced_invoice_number": "BQ/1819/SUB/167",
                    "discount_details": {
                        "code": "UAT",
                        "discount_percentage": 20,
                        "discount_amount": "30.51"
                    },
                    "created_at": "2018-12-12T10:25:48.590Z"
                }
            ],
            "next_payment_due_date": null,
            "deleted_at": null,
            "campaign_name": null,
            "payment_amount_currency": "INR",
            "campaign_subscription": false,
            "campaign_id": null,
            "start_timestamp": "2021-08-07T11:28:46.271Z",
            "assets": [
                {
                    "title": "Site",
                    "metadata": {},
                    "type": "site"
                },
                {
                    "title": "Monthly magazines",
                    "metadata": {},
                    "type": "static"
                },
                {
                    "title": "All exclusive reportage content",
                    "metadata": {
                        "access_level": 400
                    },
                    "type": "story"
                },
                {
                    "title": "All paid stories",
                    "metadata": {
                        "access_level": 300
                    },
                    "type": "story"
                },
                {
                    "title": "All Story",
                    "metadata": {
                        "access_level": "999"
                    },
                    "type": "story"
                }
            ],
            "end_timestamp": "2021-11-07T11:28:46.271Z",
            "payment_amount": "144.00",
            "discount_detail": {
                "code": "UAT",
                "discount_type": "percent",
                "title": "UAT Trial",
                "value": 20,
                "discounted_price_cents": 14400,
                "price_cents": 18000,
                "price_currency": "INR"
            },
            "duration_length": 3,
            "dynamic_assets": {},
            "trial_period_length": null,
            "group_description": "Silver + Access to Exclusive Reportage + Monthly round-up magazines",
            "renewable": false,
            "subscription_attempt_id": 96595,
            "subscription_group_id": 2197,
            "coupon_code": "UAT",
            "recurring": false,
            "payment_type": "razorpay",
            "cancelled": false,
            "payment_token": "pay_BWpQWQcLLK3L37",
            "updated_at": "2018-12-12T10:25:48.494Z",
            "coupon_code_id": 82,
            "plan_amount_cents": 18000,
            "status": "pending",
            "group_name": "Unlimited",
            "external_id": null,
            "active": false,
            "id": 32405,
            "plan_occurrence": "One Time",
            "in_grace_period": false,
            "code": null,
            "preferred_identity": {
                "provider": "quintype",
                "value": "251933"
            },
            "plan_amount_currency": "INR",
            "expired": false,
            "payment_id": 32379,
            "plan_name": "3 months",
            "subscription_plan_id": 2118,
            "duration_unit": "months",
            "trial_period_unit": null,
            "subscription_type": "standard",
            "plan_description": "All assets ",
            "cancelled_at": null,
            "metadata": {
                "mobile_number": "7639817688"
            },
            "renewal_reminder_sent_date": null,
            "created_at": "2018-12-12T10:25:48.494Z",
            "subscriber_id": 9311,
            "payment_amount_cents": 14400
        }
    }
    

    Registers a member and creates subscription in Accesstype. To be used for users that have not logged in. It returns X-QT-AUTH in response headers.

    gateway-name can be any valid payment-type supported by Accesstype.

    accesstype-plan-id is the Id of plan in Accesstype.

    attempt-token can be fetched using preview api. This is an optional parameter but we advice you to use it for better tracking of transactions.

    [Deprecated] POST Create Subscription for logged in user

    curl -H "X-QT-AUTH: <your-auth-token>" -H "Content-Type: application/json" -X POST http://sketches.quintype.com/api/v1/members/me/subscriptions -d '{
      "subscription": {
        "subscription_plan_id": "2118",
        "coupon_code": "UAT",
        "payment": {
            "payment_type": "razorpay",
            "payment_token": "pay_BWpQWQcLLK3L37",
            "amount_cents": "14400",
            "amount_currency": "INR"
        },
        "metadata":  {
            "full-name": "hello",
            "email": "hello@quintype.com"
        },
        "start_timestamp": "2018-09-21 00:00:00"
      },
      "attempt_token": "fo4bMWjP6N5vtVySNtiAUNBQ"
    }'
    
    {
        "subscription": {
            "invoices": [
                {
                    "amount_after_discount_before_tax": "122.03",
                    "amount_currency": "INR",
                    "id": 990,
                    "invoice_taxes": {
                        "SGST": {
                            "percentage": "9.0",
                            "amount": "10.98",
                            "currency": "INR"
                        },
                        "CGST": {
                            "percentage": "9.0",
                            "amount": "10.98",
                            "currency": "INR"
                        }
                    },
                    "amount_cents": 14400,
                    "base_price": "152.54",
                    "sequenced_invoice_number": "BQ/1819/SUB/167",
                    "discount_details": {
                        "code": "UAT",
                        "discount_percentage": 20,
                        "discount_amount": "30.51"
                    },
                    "created_at": "2018-12-12T10:25:48.590Z"
                }
            ],
            "next_payment_due_date": null,
            "deleted_at": null,
            "campaign_name": null,
            "payment_amount_currency": "INR",
            "campaign_subscription": false,
            "campaign_id": null,
            "start_timestamp": "2021-08-07T11:28:46.271Z",
            "assets": [
                {
                    "title": "Site",
                    "metadata": {},
                    "type": "site"
                },
                {
                    "title": "Monthly magazines",
                    "metadata": {},
                    "type": "static"
                },
                {
                    "title": "All exclusive reportage content",
                    "metadata": {
                        "access_level": 400
                    },
                    "type": "story"
                },
                {
                    "title": "All paid stories",
                    "metadata": {
                        "access_level": 300
                    },
                    "type": "story"
                },
                {
                    "title": "All Story",
                    "metadata": {
                        "access_level": "999"
                    },
                    "type": "story"
                }
            ],
            "end_timestamp": "2021-11-07T11:28:46.271Z",
            "payment_amount": "144.00",
            "discount_detail": {
                "code": "UAT",
                "discount_type": "percent",
                "title": "UAT Trial",
                "value": 20,
                "discounted_price_cents": 14400,
                "price_cents": 18000,
                "price_currency": "INR"
            },
            "duration_length": 3,
            "dynamic_assets": {},
            "trial_period_length": null,
            "group_description": "Silver + Access to Exclusive Reportage + Monthly round-up magazines",
            "renewable": false,
            "subscription_attempt_id": 96595,
            "subscription_group_id": 2197,
            "coupon_code": "UAT",
            "recurring": false,
            "payment_type": "razorpay",
            "cancelled": false,
            "payment_token": "pay_BWpQWQcLLK3L37",
            "updated_at": "2018-12-12T10:25:48.494Z",
            "coupon_code_id": 82,
            "plan_amount_cents": 18000,
            "status": "pending",
            "group_name": "Unlimited",
            "external_id": null,
            "active": false,
            "id": 32405,
            "plan_occurrence": "One Time",
            "in_grace_period": false,
            "code": null,
            "preferred_identity": {
                "provider": "quintype",
                "value": "251933"
            },
            "plan_amount_currency": "INR",
            "expired": false,
            "payment_id": 32379,
            "plan_name": "3 months",
            "subscription_plan_id": 2118,
            "duration_unit": "months",
            "trial_period_unit": null,
            "subscription_type": "standard",
            "plan_description": "All assets ",
            "cancelled_at": null,
            "metadata": {
                "mobile_number": "7639817688"
            },
            "renewal_reminder_sent_date": null,
            "created_at": "2018-12-12T10:25:48.494Z",
            "subscriber_id": 9311,
            "payment_amount_cents": 14400
        }
    }
    

    This API can be used to create a subscription.

    Here attempt_token is the token received from preview.

    This API is safe to call from the front end JS, where it will read session-cookie to determine the current user. Backend callers can use X-QT-AUTH for the same purpose.

    [Deprecated] LIST All subscriptions of a user

    curl -H "X-QT-AUTH: <your-auth-token>" -H "Content-Type: application/json" http://sketches.quintype.com/api/v1/members/me/subscriptions
    
    
    {
      "subscriptions": [
        {
          "invoices": [
            {
              "amount_after_discount_before_tax": "122.03",
              "amount_currency": "INR",
              "id": 990,
              "invoice_taxes": {
                "SGST": {
                  "percentage": "9.0",
                  "amount": "10.98",
                  "currency": "INR"
                },
                "CGST": {
                  "percentage": "9.0",
                  "amount": "10.98",
                  "currency": "INR"
                }
              },
              "amount_cents": 14400,
              "base_price": "152.54",
              "sequenced_invoice_number": "BQ/1819/SUB/167",
              "discount_details": {
                "code": "UAT",
                "discount_percentage": 20,
                "discount_amount": "30.51"
              },
              "created_at": "2018-12-12T10:25:48.590Z"
            }
          ],
          "id": 713,
          "subscriber_id": 453,
          "subscription_plan_id": 16,
          "created_at": "2017-10-30T10:55:42.201Z",
          "updated_at": "2017-10-30T10:55:42.201Z",
          "assets": [
            {
              "metadata": {},
              "title": "public",
              "type": "site"
            }
          ],
          "start_timestamp": "2017-10-30T10:55:42.176Z",
          "end_timestamp": "2017-11-13T10:55:42.176Z",
          "deleted_at": null,
          "payment_id": 668,
          "metadata": {
            "Name": "Sample User",
            "Address": "Sample add",
            "Phone Number": "1111111111"
          },
          "external_id": null,
          "trial_period_length": null,
          "trial_period_unit": null,
          "coupon_code": null,
          "subscription_group_id": 21,
          "preferred_identity": {
            "provider": "email",
            "value": "sample@gmail.com"
          },
          "group_name": "Sub Group 1",
          "plan_name": "Sub Plan 1",
          "duration_length": 2,
          "duration_unit": "weeks",
          "subscription_type": "individual",
          "active": true,
          "payment_amount": "0.00",
          "payment_type": "manual",
          "renewable": true
        }
      ]
    }
    

    It gives all subscriptions for a user.

    This API is safe to call from the front end JS, where it will read session-cookie to determine the current user. Backend callers can use X-QT-AUTH for the same purpose.

    [Deprecated] LIST All Assets accessible to user

    curl -H "X-QT-AUTH: <your-auth-token>" -H "Content-Type: application/json" http://sketches.quintype.com/api/v1/members/me/assets
    
    
    {
       "assets":[
          {
           "metadata":{},
           "title":"public",
           "type":"site"
          }
       ]
    }
    
    

    It gives all assets accessible to a user.

    This API is safe to call from the front end JS, where it will read session-cookie to determine the current user. Backend callers can use X-QT-AUTH for the same purpose.

    [Deprecated] PATCH Update a subscription

    curl -H "X-QT-AUTH: <your-auth-token>" -H "Content-Type: application/json" -X PATCH http://sketches.quintype.com/api/v1/members/me/subscriptions/<id> -d '{
      "metadata":  {
        "full-name": "hello-world",
        "email": "hello@quintype.com"
      }
    }'
    
    

    It updates a subscription for user.

    This API is safe to call from the front end JS, where it will read session-cookie to determine the current user. Backend callers can use X-QT-AUTH for the same purpose.

    [Deprecated] GET Access details

     curl -H "X-QT-AUTH: <your-auth-token>" -X GET 'http://sketches.quintype.com/api/v1/stories/<story-id>/access-data'
    
     {
        "access-data": {
            "name": "subtype"
        }
     }
    

    This API can be used to get access details of any story for a user.

    It returns 403 if the story is not accessible to user, else 200.

    This API is safe to call from the front end JS, where it will read session-cookie to determine the current user. Backend callers can use X-QT-AUTH for the same purpose.

    Release Notes

    This section contains important Accestype release notes. For any queries, please write to us at support@quintype.com.

    21 Nov 19 Release NOte - Accesstype

    1. International Currency Support - Accesstype can now display and charge payments in multiple currencies. The complete list of currencies supported is available for Razorpay here and for Stripe here. Accesstype Multi Currency
    2. Section based access - Accesstype now lets you define subscripton plans based on Sections available in your Quintype CMS - Bold so that the subscribers get access to only the stories available in the particular section or sections. Accesstype Section Access

    19 Nov 19 Release Note - Accesstype

    1. Google API upgrade - Accesstype is now updated to work with the latest GooglePay APIs(previously AndroidPay).

    5 Nov 19 Release Note - Accesstype

    1. General Settings - A new settings page with Account Detailsm API Key and Authentication Key. The API Authentication and API Key fields are displayed to Users with the "Owner" role. Accesstype General Settings
    2. Admin email addresses - A new feature to manage recepients of all admin related emails. Accesstype Admin Email Settings
    3. Trial Period in Recurring Subscriptions - A new feature where recurring subscription plans now have the ability to offer subscribers a trial period before actually being charged. This is functional with Razorpay payment gateway. Accesstype Trial Period

    22 Oct 19 Release Note - Accesstype

    1. Accesstype.js new method - Cancel Subscription is now allowed as a method in Accesstype.js.

    25 Sep 19 Release Note - Accesstype

    1. Outgoing Webhooks - Webhooks setup in Accesstype will automatically be de-activated if Accesstype receives failure responses from the URL (4** or 5** HTTP/S response code) for a period of 24 hours. Accesstype users can then enable them by going to the Webhooks dashboard.

    17 Sep 19 Release Note - Accesstype

    1. Subscription Revenue Analytics - The Revenue Graph indicates the total revenue generated by each individual Group or Plan in the selected time period. Option to choose the Granularity of data, Date range, Currency and Group/Plan. Accesstype Revenue Graph
    2. Subscriber Search upgrade - Subscriber search result now displays the attempts made by the subscriber as well.

    10 Sep 19 Release Note - Accesstype

    1. Subscriber Search upgrade - Subscriber search now looks for users who have attempted to make a payment even if the users do not have a subscription record.

    28 Aug 19 Release Note - Accesstype

    1. Stripe Payment Gateway Integration - Accestype now integrates with Stripe to collect payments. This includes update includes accepting one-time payments from subscribers in INR and USD currencies, listens to webhooks from Stripe and stores payment transaction information in Accesstype. Accesstype Stripe
    2. The Subscriber object is now included in the Subscription Object in all the webhook payloads as well as Subscription Preview and Create API responses.
    3. Skip Payment Gateway when no payment neededAccesstype now has the ability to create subscriptions without payment gateway involvement for subscriptions that don't have a payment to be made.

    19 Aug 19 Release Note - Accesstype

    1. Attempts CSV report now contains the payment gateway that was used by the potential subscriber to perform the attempt to subscribe.
    2. [Bug fix] - Add identity now trims leading and trailing spaces when Accesstype user adds an email.
    3. [Bug fix] - Paywall meter cookie is now persistent on exiting the browser application.

    8 Aug 19 Release Note - Accesstype

    1. Update Subscriber metadata - Subscriber information can now be updated by using Accesstype JS.
    2. Manual Subscriptions can now be created and Amount Paid can be captured by Accesstype Owners using the dashboard. Go to Accesstype.com > Subscribers > Add new user or find a user by entering email > Select the Group and Plan > Enter Amount paid and notes if any > Click on Save. Accesstype Manual Subscription Creation Amount Paid

    5 August 19 Release Note - Accesstype

    1. Outgoing Webhooks (update) - Subscriber Creation webhook is an additional event that is now available for use. Time-outs are now applied to the webhook call that are made to third party systems. Time-outs are set at 10s to establish a connection and 5s to receive a response to the POST API calls.
    2. Skip payment gateway Accesstype now allows subscriptipons to be created when no amount is required to be paid. This may happen when the price of the plan is set to 0 or when the entire plan amount is discounted using a coupon code.

    30 Jul 19 Release Note - Accesstype

    1. Juspay payment now opens up in a new tab instead of a new pop-up window.

    26 Jul 19 Release Note - Accesstype

    1. Outgoing Webhooks (update) - Subscription Activation and Subscription Entered Grace Period are the events that are additionally available for use.

    19 Jul 19 Release Note - Accesstype

    1. Outgoing Webhooks (update) - Subscription Creation, Subscription Cancellation and Subscription Renewal are the events that are additionally available for use.

    1 Jul 19 Release Note - Accesstype

    1. Outgoing Webhooks - Accesstype now has the ability to make webhook calls to third party systems on specific events. Click here to know more about Accesstype webhooks, how to set up webhooks, a description of the events and how to verify the webhooks sent by Accesstype.

    As part of this release, the Subscription Expiry event is available for use.

    27 Jun 19 Release Note - Accesstype

    1. Cloudfalre purge optimisations.

    25 Jun 19 Release Note - Accesstype

    1. Subscription Preview and Subscription Create without a login, are now allowed in Accesstype.js and served from the Cloudflare edge worker.

    21 Jun 19 Release Note - Accesstype

    1. Accesstype is now integrated with Voucherify so Discount and Referral vouchers can be applied redeemed by subscribers in One-Time subscriptions and Pay Per Asset subscriptions.

    18 Jun 19 Release Note - Accesstype

    1. Get Subscriptions and Get Assets APIs are now available in Accesstype.js and served from the Cloudflare Edge worker.

    13 Jun 19 Release Note - Accesstype

    1. Use publisher domain specific cookie for Paywall meter.

    29 May 19 Release Note - Accesstype

    1. Razorpay proactive subscription creation bug fixes.

    20 May 19 Release Note - Accesstype

    1. Access grant API now served from the Cloudflare edge worker.

    10 May 19 Release Note - Accesstype

    1. Juspay payment optimisations.

    24 Apr 19 Release Note - Accesstype

    1. Paywall meter and Coudflare purge optimisations.

    17 Apr 19 Release Note - Accesstype

    1. Consolidated Daily Subscription Report: This daily subscription report contains Subscription details, payment information, tax invoice data and subscriber information for Plan based subscriptions, PPA purchases and Campaign subscriptions, all in one file.

    This CSV report is generated daily for the previous day and is available at

    Accesstype > Analytics > Reports

    Accesstype Consolidated Daily Subscription Report

    11 Apr 19 Release Note - Accesstype

    1. Accesstype now uses serverless computing technology for increased efficiency in performance, scalability and resilience.

    29 Mar 19 Release Note - Accesstype

    1. CSV reports now include Payment Transaction Date for better reconciliation of Recurring subscriptions.
    2. Bug fix: The Manage Subscription Plan and Group had hidden buttons.
    3. Bug fix: Recheck Paytm transaction status when it is in pending state.

    28 Mar 19 Release Note - Accesstype

    1. CSV reports now include the International Payment column to help identify those payments that are made using international cards.

    Note: This is applicable to Razorpay payment gateway only.

    18 Feb 19 Release Note - Accesstype

    1. Juspay integration - Integration with payment aggregator Juspay for iframe type of integration. Juspay's algorithms choose the best payment gateways for best success rates and also take into account pre-defined priority logic to offer the most efficient payment option to customers. To create a Merchant account on Juspay write to support@juspay.in. Accesstype Juspay

    2. Analytics Dashboard - Monthly and daily insights into the total number of subscriptions that are created. Accesstype Analytics Subscription Count

    4 Jan 19 Release Note - Accesstype

    1. Updated Subscription CSV Report - The subscription CSV Report now contains additional fields for financial related purposes: Base Price, Discount amounts, amount after discount before tax and round-off.
    2. Subscriber Name - The Subscriber name is now displayed in Accesstype UI as well as the CSV report by default, for all subscriptions, Pay Per Asset purchases and Campaign Patrons. Subscriber Name in UI
    3. Getsimpl workflow upgrades - Optimizations and security enhancements on Simpl payment option workflow.
    4. Bug fixes - Subscription CSV Report - Duplicate entires for recurring subscriptions are elimiated and tax amounts are displayed under the appropriate columns.

    12 Dec 18 Release Notes - Accesstype

    New Features:

    1. Invoicing and Taxes - Set up tax names and rates for generating Invoices. The tax rates set up in this module are applied and tax amounts calculated such that the price of the plan/asset is inclusive of taxes. Tax Settings
    2. HTML Template for Invoices - Upload the HTML invoice using Accesstype. The template can include a bunch of variables that are listed here. The Invoice Sequence Prefix of your choice can also be updated. Write to us at support@quintype.com to reset the invoice sequence number. Invoice Settings

    3. API for PDF invoice download - The API end point to download PDF invoices for a given subscription is available here for those on Quintype platform and here for those not on the Quintype platform. Note: The method to invoke the download Invoice PDF API call can also be made using the AccesstypeJS which is described here and here.

    11 Oct 18 Release Notes - Accesstype

    New Features:

    1. Paytm Payment Gateway - Auto Debit - Accept one-click payments for individual stories using Paytm wallets. Customers can link their wallet and purchase individual stories by just a single click. Paytm Auto Debit Payment Gateway The Paytm Auto Debit option can be used via the Accesstype JS. Documentation available here: Accesstype.js link 1 Accesstype.js link 2 Coming soon: Paytm-Auto Debit on standard plans.

    2. URLs of reports generated in Accesstype, are now signed using private URLs and have an expiry for enhanced security.

    24 Sep 18 Release Notes - Accesstype

    New Features:

    1. Accesstype Javascript - Publishers on the Quintype platform can now easily integrate with Payment Gateways/Wallets as well as set up conversations with Accesstype servers, all in one place using methods in accesstype.js

      1. Pay Per Asset(PPA) APIs to get the price of a story, view available payment options for the user, purchase stories can be called using methods available in Accesstype.js
      2. Accept payments from Simpl payment gateway using accesstype.js for both traditional plans as well as for individual stories(PPA)
      3. Accept payments from Razorpay payment gateway using accesstype.js for both traditional plans as well as for individual stories(PPA) Documentation links: Accesstype.js link 1 Accesstype.js link 2 Note: To integrate accesstype.js with your website, please get in touch with your account managers or contact us at support@quintype.com
    2. Pay Per Asset(PPA) - Publishers on the Quintype platform can now sell each story(a.k.a asset) individually. Set up pricing for stories and view all purcchases of individual stories using the Accesstype application. PPA Set Price PPA Purchases

    3. New Payment Gateway - Simpl - Publishers can activate and use the Simpl payment gateway options for frictionless payments. Also available in the Accesstype.js Simpl PG

    4. Menu restructure - The Accesstype menu is now restructured for easy navigation and segregation of subscription/purchase information.

    Accesstype Menu

    1. Encryption of Wallet token.

    6 Aug 18 Release Notes - Accesstype

    Enhancements and bug fixes:

    1. Wallets API - Link wallets of Simpl and PayTm with publishers. Documentation available here
    2. Emails sent out to subscribers have a new look.
    3. Enhancements to help reconcile subscription failures using Android Pay if any.
    4. Minor bug fixes.

    10 Jul 18 Release Notes - Accesstype

    Enhancements and bug fixes:

    1. Updated the Subscriptions Report to include Plan names of the group, Subscription Created Date and Subscription Start Date.
    2. Security and user concurrency upgrades.

    28 Jun 18 Release Notes - Accesstype

    Enhancements and bug fixes:

    1. Accesstype users will now have their activities within the application, logged in the database.
    2. Users will now know the account that they are actively working on. Account Display
    3. Optimisation in payment gateway integration: Subscription attempts, sucscription creations and multiple payments associated with a subscription are now traceable.
    4. Users can now get instant help using the help chat. Support
    5. Easy access link to Accesstype documentation.
    6. [Bug fix] Razorpay payment transaction amounts rounded down in CSV reports
    7. Other bug fixes.