POST
/
accounts
/
{account_id}
/
purchase_proposals
curl --request POST \
--url https://api.togai.com/accounts/{account_id}/purchase_proposals \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"pricePlanId": "pp.20dINmd0lBg.05sKa",
"type": "ENTITLEMENT_GRANT",
"paymentMode": "PREPAID",
"quantity": 1,
"purchasePlanOverride": {
"billingEntitlementRateCards": [
{
"featureId": "feature.20jxa18BdUW.d4XQw",
"featureConfigs": [
{
"featureCreditLimit": 100,
"effectiveUntil": "P20D"
}
],
"invoiceTiming": "IN_ADVANCE",
"ratePlan": {
"pricingModel": "TIERED",
"slabs": [
{
"order": 1,
"startAfter": 0,
"priceType": "PER_UNIT",
"slabConfig": {}
}
]
},
"rateValues": [
{
"currency": "USD",
"slabRates": [
{
"order": 1,
"rate": 1,
"slabRateConfig": {}
}
]
}
],
"displayName": "feature1",
"tag": "tag 1"
}
]
}
}'
{
  "id": "purchase.20rvWRxQcQK.0ZwPG",
  "accountId": "account2394",
  "pricePlanId": "pp.20rqb4MK9ia.TD0eG",
  "createdAt": "2023-07-26T12:36:56.58015Z",
  "type": "ASSOCIATION",
  "status": "PROPOSAL_ACTIVE",
  "paymentMode": "PREPAID",
  "associationOverride": {
    "pricingCycleConfig": {
      "interval": "MONTHLY",
      "startOffset": {
        "dayOffset": "2",
        "monthOffset": "NIL"
      },
      "gracePeriod": 3,
      "anniversaryCycle": false
    }
  },
  "updatedAt": "2023-07-26T12:36:56.58015Z",
  "effectiveFrom": "2023-06-30",
  "effectiveUntil": "2023-08-30",
  "comment": "Proposal Approved"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

account_id
string
required

account_id corresponding to an account

Maximum length: 50
Example:

"ACC00001"

Body

application/json

Payload to initiate a proposal

Create a purchase for an account

type
enum<string>
required

Specifies whether this purchase is for granting entitlements or for an association or for wallet topup or prepaid purchase. If left null, ENTITLEMENT_GRANT is taken as default

Available options:
ENTITLEMENT_GRANT,
ASSOCIATION,
WALLET_TOPUP,
PREPAID
paymentMode
enum<string>
required
Available options:
PREPAID,
POSTPAID
pricePlanId
string

Id of the price plan, Required for ENTITLEMENT_GRANT, ASSOCIATION purchase

quantity
integer
rateCardQuantities
object
idempotencyKey
string
purchasePlanOverride
object

entitlements override options for purchase of a price plan for an account

associationOverride
object
walletTopupDetails
object

Information related to wallet topup purchase

effectiveFrom
string<date>
effectiveUntil
string<date>
expiryDate
string<date-time>

Response

Response to create proposal request

Represents a Purchase

id
string
required
accountId
string
required
Minimum length: 1
createdAt
string<date-time>
required
status
enum<string>
required

Status of the purchase

Available options:
SUCCESS,
FAILURE,
PENDING,
IN_PROGRESS,
PROPOSAL_ACTIVE,
PROPOSAL_APPROVED,
PROPOSAL_DECLINED,
PROPOSAL_EXPIRED
type
enum<string>
required

Specifies whether this purchase is for granting entitlements or for an association or for wallet topup or prepaid purchase. If left null, ENTITLEMENT_GRANT is taken as default

Available options:
ENTITLEMENT_GRANT,
ASSOCIATION,
WALLET_TOPUP,
PREPAID
paymentMode
enum<string>
required
Available options:
PREPAID,
POSTPAID
pricePlanId
string

Id of the price plan, Required for ENTITLEMENT_GRANT, ASSOCIATION purchase

Minimum length: 1
quantity
integer
rateCardQuantities
object
idempotencyKey
string
pricePlanVersion
integer
purchasePlanOverride
object
associationOverride
object
walletTopupDetails
object

Information related to wallet topup purchase

updatedAt
string<date-time>
effectiveFrom
string<date>
effectiveUntil
string<date>
expiryDate
string<date-time>
price
number
invoiceId
string
invoiceCurrency
string
comment
string
proposalResponseDate
string<date-time>