ProsperStack · Schema

FlowSession

CompanyRetentionSubscriptionAnalyticsSaaS

Properties

Name Type Description
id string
status string
created_at string
started_at stringnull
updated_at string
completed_at stringnull
flow object
subscriber object
subscription object
offers_presented array
offer_groups_presented array
offer_accepted object
answers array
steps array
cancel_reason object
deflected_by object
rerouted_from_flow_session_id stringnull
client object
View JSON Schema on GitHub

JSON Schema

prosperstack-flow-session-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/prosperstack/main/json-schema/prosperstack-flow-session-schema.json",
  "title": "FlowSession",
  "x-generated": "2026-10-26",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/prosperstack-openapi.json#/components/schemas/FlowSession",
  "type": "object",
  "required": [
    "id",
    "status",
    "created_at",
    "started_at",
    "updated_at",
    "completed_at",
    "flow",
    "subscriber",
    "subscription",
    "offers_presented",
    "offer_groups_presented",
    "offer_accepted",
    "answers",
    "steps",
    "cancel_reason",
    "deflected_by",
    "rerouted_from_flow_session_id",
    "client"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "canceled",
        "saved",
        "deflected",
        "incomplete",
        "rerouted"
      ]
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "started_at": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "completed_at": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "flow": {
      "$ref": "#/$defs/Flow"
    },
    "subscriber": {
      "$ref": "#/$defs/Subscriber"
    },
    "subscription": {
      "$ref": "#/$defs/Subscription"
    },
    "offers_presented": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Offer"
      }
    },
    "offer_groups_presented": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/OfferGroup"
      }
    },
    "offer_accepted": {
      "oneOf": [
        {
          "$ref": "#/$defs/AcceptedOffer"
        },
        {
          "type": "null"
        }
      ]
    },
    "answers": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Answer"
      }
    },
    "steps": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/FlowSessionStep"
      }
    },
    "cancel_reason": {
      "oneOf": [
        {
          "$ref": "#/$defs/CancelReason"
        },
        {
          "type": "null"
        }
      ]
    },
    "deflected_by": {
      "oneOf": [
        {
          "$ref": "#/$defs/FlowSessionDeflectedBy"
        },
        {
          "type": "null"
        }
      ]
    },
    "rerouted_from_flow_session_id": {
      "type": [
        "string",
        "null"
      ]
    },
    "client": {
      "type": "object",
      "required": [
        "user_agent",
        "url"
      ],
      "properties": {
        "user_agent": {
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "type": [
            "string",
            "null"
          ],
          "description": "URL the flow session was initiated from"
        }
      }
    }
  },
  "$defs": {
    "AcceptedOffer": {
      "type": "object",
      "required": [
        "id",
        "type",
        "goal",
        "context",
        "name",
        "details",
        "metadata",
        "created_at",
        "updated_at"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "change_frequency",
            "change_plan",
            "coupon",
            "custom",
            "downgrade",
            "dunning",
            "free_gift",
            "modify_subscription",
            "pause_subscription",
            "product_swap",
            "purchase",
            "reactivate",
            "reschedule_order",
            "trial_extension",
            "upgrade"
          ]
        },
        "goal": {
          "type": "string",
          "enum": [
            "retention",
            "conversion",
            "reactivation"
          ]
        },
        "context": {
          "type": "string",
          "enum": [
            "cancellation_flow",
            "conversion_campaign",
            "landing_page"
          ]
        },
        "name": {
          "type": "string"
        },
        "details": {
          "oneOf": [
            {
              "$ref": "#/$defs/ChangeFrequencyAcceptedOfferDetails"
            },
            {
              "$ref": "#/$defs/ChangePlanOfferDetails"
            },
            {
              "$ref": "#/$defs/CouponOfferDetails"
            },
            {
              "$ref": "#/$defs/CustomOfferDetails"
            },
            {
              "$ref": "#/$defs/DowngradeOfferDetails"
            },
            {
              "$ref": "#/$defs/DunningOfferDetails"
            },
            {
              "$ref": "#/$defs/FreeGiftOfferDetails"
            },
            {
              "$ref": "#/$defs/ModifySubscriptionOfferDetails"
            },
            {
              "$ref": "#/$defs/PauseSubscriptionAcceptedOfferDetails"
            },
            {
              "$ref": "#/$defs/ProductSwapAcceptedOfferDetails"
            },
            {
              "$ref": "#/$defs/PurchaseOfferDetails"
            },
            {
              "$ref": "#/$defs/ReactivateOfferDetails"
            },
            {
              "$ref": "#/$defs/RescheduleOrderAcceptedOfferDetails"
            },
            {
              "$ref": "#/$defs/TrialExtensionOfferDetails"
            },
            {
              "$ref": "#/$defs/UpgradeOfferDetails"
            }
          ]
        },
        "metadata": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "Answer": {
      "type": "object",
      "required": [
        "question",
        "value",
        "sentiment"
      ],
      "properties": {
        "question": {
          "$ref": "#/$defs/Question"
        },
        "value": {
          "oneOf": [
            {
              "$ref": "#/$defs/MultipleChoiceValue"
            },
            {
              "$ref": "#/$defs/MultipleChoiceOtherValue"
            },
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "sentiment": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "positive",
            "negative",
            "neutral"
          ]
        }
      }
    },
    "CancelReason": {
      "type": "object",
      "required": [
        "text",
        "reason_code"
      ],
      "properties": {
        "text": {
          "type": "string"
        },
        "reason_code": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "ChangeFrequencyAcceptedOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "interval",
        "interval_count",
        "metadata"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "change_frequency"
          ]
        },
        "interval": {
          "type": "string",
          "enum": [
            "day",
            "week",
            "month",
            "year"
          ]
        },
        "interval_count": {
          "type": "number"
        },
        "metadata": {
          "type": "object"
        }
      }
    },
    "ChangeFrequencyOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "interval",
        "interval_count",
        "metadata",
        "options"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "change_frequency"
          ]
        },
        "interval": {
          "type": "string",
          "enum": [
            "day",
            "week",
            "month",
            "year"
          ]
        },
        "interval_count": {
          "type": "number"
        },
        "metadata": {
          "type": "object"
        },
        "options": {
          "type": "array",
          "description": "All available change-frequency options for this offer",
          "items": {
            "type": "object",
            "required": [
              "interval",
              "interval_count",
              "metadata"
            ],
            "properties": {
              "interval": {
                "type": "string",
                "enum": [
                  "day",
                  "week",
                  "month",
                  "year"
                ]
              },
              "interval_count": {
                "type": "number"
              },
              "metadata": {
                "type": "object"
              }
            }
          }
        }
      }
    },
    "ChangePlanOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "platform_plan_id",
        "prorate",
        "platform_coupon_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "change_plan"
          ]
        },
        "platform_plan_id": {
          "type": "string"
        },
        "prorate": {
          "type": "boolean"
        },
        "platform_coupon_id": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "CouponOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "coupon_type",
        "amount_off",
        "duration",
        "months",
        "apply_to",
        "platform_coupon_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "coupon"
          ]
        },
        "coupon_type": {
          "type": "string",
          "enum": [
            "percentage",
            "fixed"
          ]
        },
        "amount_off": {
          "type": "string"
        },
        "duration": {
          "type": "string",
          "enum": [
            "once",
            "forever",
            "repeating"
          ]
        },
        "months": {
          "type": [
            "number",
            "null"
          ]
        },
        "apply_to": {
          "type": "string",
          "enum": [
            "subscription",
            "subscriber"
          ]
        },
        "platform_coupon_id": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "CustomOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "custom"
          ]
        }
      }
    },
    "Deflection": {
      "type": "object",
      "required": [
        "id",
        "name",
        "actions"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/FlowAction"
          }
        }
      }
    },
    "DowngradeOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "downgrade"
          ]
        }
      }
    },
    "DunningOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "dunning"
          ]
        }
      }
    },
    "Flow": {
      "type": "object",
      "required": [
        "id",
        "name",
        "created_at",
        "updated_at"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "FlowAction": {
      "type": "object",
      "required": [
        "id",
        "code",
        "type",
        "details"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "code": {
          "type": [
            "string",
            "null"
          ]
        },
        "type": {
          "type": "string",
          "enum": [
            "url"
          ]
        },
        "details": {
          "oneOf": [
            {
              "$ref": "#/$defs/FlowActionUrlDetails"
            }
          ]
        }
      }
    },
    "FlowActionUrlDetails": {
      "type": "object",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "url"
        }
      }
    },
    "FlowSessionDeflectedBy": {
      "type": "object",
      "required": [
        "type",
        "details"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "automatic",
            "deflection"
          ]
        },
        "details": {
          "oneOf": [
            {
              "$ref": "#/$defs/FlowSessionDeflectedByDetails"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    },
    "FlowSessionDeflectedByDetails": {
      "type": "object",
      "required": [
        "deflection",
        "action"
      ],
      "properties": {
        "deflection": {
          "$ref": "#/$defs/Deflection"
        },
        "action": {
          "$ref": "#/$defs/FlowAction"
        }
      }
    },
    "FlowSessionStep": {
      "type": "object",
      "required": [
        "step",
        "started_at",
        "completed_at"
      ],
      "properties": {
        "step": {
          "$ref": "#/$defs/FlowStep"
        },
        "started_at": {
          "type": "string",
          "format": "date-time"
        },
        "completed_at": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        }
      }
    },
    "FlowStep": {
      "type": "object",
      "required": [
        "id",
        "type",
        "title"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "acknowledgements",
            "confirmation",
            "deflection",
            "instant_cancel",
            "offer",
            "question"
          ]
        },
        "title": {
          "type": "string"
        }
      }
    },
    "FreeGiftOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "platform_variant_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "free_gift"
          ]
        },
        "platform_variant_id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Platform-specific identifier of the product variant offered as the free gift"
        }
      }
    },
    "ModifySubscriptionOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "modifications"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "modify_subscription"
          ]
        },
        "modifications": {
          "type": "array",
          "description": "Modifications applied to the subscription when the offer is accepted",
          "items": {
            "type": "object",
            "required": [
              "action",
              "platform_plan_id"
            ],
            "properties": {
              "action": {
                "type": "string",
                "enum": [
                  "add_plan",
                  "remove_plan",
                  "add_add_on",
                  "remove_add_on"
                ]
              },
              "platform_plan_id": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Platform-specific identifier of the plan or add-on affected by this modification"
              }
            }
          }
        }
      }
    },
    "MultipleChoiceOtherValue": {
      "type": "object",
      "required": [
        "text"
      ],
      "properties": {
        "text": {
          "type": "string"
        }
      }
    },
    "MultipleChoiceValue": {
      "type": "object",
      "required": [
        "id",
        "text"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "text": {
          "type": "string"
        }
      }
    },
    "Offer": {
      "type": "object",
      "required": [
        "id",
        "type",
        "goal",
        "context",
        "name",
        "details",
        "metadata",
        "created_at",
        "updated_at"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "change_frequency",
            "change_plan",
            "coupon",
            "custom",
            "downgrade",
            "dunning",
            "free_gift",
            "modify_subscription",
            "pause_subscription",
            "product_swap",
            "purchase",
            "reactivate",
            "reschedule_order",
            "trial_extension",
            "upgrade"
          ]
        },
        "goal": {
          "type": "string",
          "enum": [
            "retention",
            "conversion",
            "reactivation"
          ]
        },
        "context": {
          "type": "string",
          "enum": [
            "cancellation_flow",
            "conversion_campaign",
            "landing_page"
          ]
        },
        "name": {
          "type": "string"
        },
        "details": {
          "oneOf": [
            {
              "$ref": "#/$defs/ChangeFrequencyOfferDetails"
            },
            {
              "$ref": "#/$defs/ChangePlanOfferDetails"
            },
            {
              "$ref": "#/$defs/CouponOfferDetails"
            },
            {
              "$ref": "#/$defs/CustomOfferDetails"
            },
            {
              "$ref": "#/$defs/DowngradeOfferDetails"
            },
            {
              "$ref": "#/$defs/DunningOfferDetails"
            },
            {
              "$ref": "#/$defs/FreeGiftOfferDetails"
            },
            {
              "$ref": "#/$defs/ModifySubscriptionOfferDetails"
            },
            {
              "$ref": "#/$defs/PauseSubscriptionOfferDetails"
            },
            {
              "$ref": "#/$defs/ProductSwapOfferDetails"
            },
            {
              "$ref": "#/$defs/PurchaseOfferDetails"
            },
            {
              "$ref": "#/$defs/ReactivateOfferDetails"
            },
            {
              "$ref": "#/$defs/RescheduleOrderOfferDetails"
            },
            {
              "$ref": "#/$defs/TrialExtensionOfferDetails"
            },
            {
              "$ref": "#/$defs/UpgradeOfferDetails"
            }
          ]
        },
        "metadata": {
          "type": "object"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "OfferGroup": {
      "type": "object",
      "required": [
        "id",
        "name",
        "offers",
        "created_at",
        "updated_at"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "offers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Offer"
          }
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "PauseSubscriptionAcceptedOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "interval",
        "interval_count",
        "pause_at",
        "metadata"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "pause_subscription"
          ]
        },
        "interval": {
          "type": "string",
          "enum": [
            "day",
            "week",
            "month",
            "indefinitely",
            "billing_cycle"
          ]
        },
        "interval_count": {
          "type": "number"
        },
        "pause_at": {
          "type": "string",
          "enum": [
            "immediately",
            "period_end"
          ]
        },
        "metadata": {
          "type": "object"
        }
      }
    },
    "PauseSubscriptionOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "interval",
        "interval_count",
        "pause_at",
        "metadata",
        "options"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "pause_subscription"
          ]
        },
        "interval": {
          "type": "string",
          "enum": [
            "day",
            "week",
            "month",
            "indefinitely",
            "billing_cycle"
          ]
        },
        "interval_count": {
          "type": "number"
        },
        "pause_at": {
          "type": "string",
          "enum": [
            "immediately",
            "period_end"
          ]
        },
        "metadata": {
          "type": "object"
        },
        "options": {
          "type": "array",
          "description": "All available pause options for this offer",
          "items": {
            "type": "object",
            "required": [
              "interval",
              "interval_count",
              "metadata"
            ],
            "properties": {
              "interval": {
                "type": "string",
                "enum": [
                  "day",
                  "week",
                  "month",
                  "indefinitely",
                  "billing_cycle"
                ]
              },
              "interval_count": {
                "type": "number"
              },
              "metadata": {
                "type": "object"
              }
            }
          }
        }
      }
    },
    "ProductSwapAcceptedOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "platform_variant_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "product_swap"
          ]
        },
        "platform_variant_id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Platform-specific identifier of the product variant the subscriber swapped to"
        }
      }
    },
    "ProductSwapOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "product_swap"
          ]
        }
      }
    },
    "PurchaseOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "purchase"
          ]
        }
      }
    },
    "Question": {
      "type": "object",
      "required": [
        "id",
        "type",
        "text",
        "primary"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "multiple_choice",
            "text"
          ]
        },
        "text": {
          "type": "string"
        },
        "primary": {
          "type": "boolean"
        }
      }
    },
    "ReactivateOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "reactivate"
          ]
        }
      }
    },
    "RescheduleOrderAcceptedOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "action"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "reschedule_order"
          ]
        },
        "action": {
          "type": "string",
          "enum": [
            "reschedule",
            "skip"
          ],
          "description": "Action taken on the upcoming order"
        },
        "reschedule_to": {
          "type": "string",
          "format": "date-time",
          "description": "Timestamp the order was rescheduled to, present when `action` is `reschedule`"
        }
      }
    },
    "RescheduleOrderOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "reschedule_order"
          ]
        }
      }
    },
    "Subscriber": {
      "type": "object",
      "required": [
        "id",
        "platform_id",
        "name",
        "email",
        "status",
        "properties",
        "data",
        "created_at",
        "updated_at"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "platform_id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "enum": [
            "active",
            "canceled",
            "converted",
            "deflected",
            "inactive",
            "reactivated",
            "recovered",
            "saved"
          ]
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/SubscriberPropertyValue"
          }
        },
        "data": {
          "type": "object",
          "description": "Additional data about the subscriber from the connected subscription platform"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "SubscriberProperty": {
      "type": "object",
      "required": [
        "id",
        "key",
        "name",
        "entity",
        "type",
        "format"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "key": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "entity": {
          "type": "string",
          "enum": [
            "subscriber"
          ]
        },
        "type": {
          "type": "string",
          "enum": [
            "text",
            "number",
            "boolean",
            "date"
          ]
        },
        "format": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "number",
            "currency"
          ]
        }
      }
    },
    "SubscriberPropertyValue": {
      "type": "object",
      "required": [
        "property",
        "value",
        "formatted_value"
      ],
      "properties": {
        "property": {
          "$ref": "#/$defs/SubscriberProperty"
        },
        "value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "string",
              "format": "date"
            },
            {
              "type": "number"
            },
            {
              "type": "boolean"
            }
          ]
        },
        "formatted_value": {
          "type": "string"
        }
      }
    },
    "Subscription": {
      "type": "object",
      "required": [
        "id",
        "platform_id",
        "subscriber_id",
        "mrr",
        "status",
        "properties",
        "data",
        "created_at",
        "updated_at"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "platform_id": {
          "type": "string"
        },
        "subscriber_id": {
          "type": "string"
        },
        "mrr": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "enum": [
            "active",
            "canceled",
            "future",
            "paused",
            "trialing"
          ]
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/SubscriptionPropertyValue"
          }
        },
        "data": {
          "type": "object",
          "description": "Additional data about the subscription from the connected subscription platform"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "SubscriptionProperty": {
      "type": "object",
      "required": [
        "id",
        "key",
        "name",
        "entity",
        "type",
        "format"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "key": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "entity": {
          "type": "string",
          "enum": [
            "subscription"
          ]
        },
        "type": {
          "type": "string",
          "enum": [
            "text",
            "number",
            "boolean",
            "date"
          ]
        },
        "format": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "number",
            "currency"
          ]
        }
      }
    },
    "SubscriptionPropertyValue": {
      "type": "object",
      "required": [
        "property",
        "value",
        "formatted_value"
      ],
      "properties": {
        "property": {
          "$ref": "#/$defs/SubscriptionProperty"
        },
        "value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "string",
              "format": "date"
            },
            {
              "type": "number"
            },
            {
              "type": "boolean"
            }
          ]
        },
        "formatted_value": {
          "type": "string"
        }
      }
    },
    "TrialExtensionOfferDetails": {
      "type": "object",
      "required": [
        "type",
        "days"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "trial_extension"
          ]
        },
        "days": {
          "type": "number"
        }
      }
    },
    "UpgradeOfferDetails": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "upgrade"
          ]
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/prosperstack-flow-session"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.