Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://testflight.tremendous.com/api/v2
https://www.tremendous.com/api/v2
No endpoints found for this provider.
BalanceTransaction
{
"type": "object",
"properties": {
"action": {
"type": "string",
"example": "Deposit",
"description": "The action that was performed"
},
"amount": {
"type": "number",
"format": "double",
"example": 50.35,
"description": "Amount of the transaction in USD"
},
"balance": {
"type": "number",
"format": "double",
"example": 92.48,
"description": "The updated total after the transaction. Note that this running balance may be delayed and contain `null`."
},
"created_at": {
"type": "string",
"format": "date",
"description": "Date that the transaction was created"
},
"description": {
"type": "string",
"description": "A brief description of the transaction"
}
},
"description": "A balance transaction represents a specific movement or change in an account's balance.\n"
}
BalanceTransactionsListAll401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
BalanceTransactionsListAll422Response
{
"type": "object",
"example": {
"errors": {
"message": "Order failed: validation failure",
"payload": {
"some_field": {
"some_sub_field": "Something went wrong with this parameter"
}
}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
BalanceTransactionsListAll429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
BalanceTransactionsListAll500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
BalanceTransactionsListAllResponse
{
"type": "object",
"properties": {
"invoices": {
"type": "array",
"items": {
"type": "object",
"properties": {
"action": {
"type": "string",
"example": "Deposit",
"description": "The action that was performed"
},
"amount": {
"type": "number",
"format": "double",
"example": 50.35,
"description": "Amount of the transaction in USD"
},
"balance": {
"type": "number",
"format": "double",
"example": 92.48,
"description": "The updated total after the transaction. Note that this running balance may be delayed and contain `null`."
},
"created_at": {
"type": "string",
"format": "date",
"description": "Date that the transaction was created"
},
"description": {
"type": "string",
"description": "A brief description of the transaction"
}
},
"description": "A balance transaction represents a specific movement or change in an account's balance.\n"
}
}
}
}
Campaign
{
"type": "object",
"required": [
"id",
"name",
"description",
"products"
],
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": true
},
"name": {
"type": "string",
"example": "My Default Campaign",
"description": "Name of the campaign"
},
"products": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": true
},
"example": [
"P3MR06THYM8R",
"EFMULTF26PMR"
],
"description": "List of IDs of products (different gift cards, charity, etc.) that are available in this campaign.\n"
},
"description": {
"type": "string",
"example": "A campaign I use as the default in Tremendous\"",
"nullable": true,
"description": "Description of the campaign"
}
},
"description": "With a campaign you can define the look & feel of how rewards are sent out.\nIt also lets you set the available products (different gift cards, charity, etc.)\nrecipients can choose from.\n\n> Note: Campaigns must be created from the Tremendous dashboard.\n>\n> • [Production Dashboard](https://app.tremendous.com)\n> • [Sandbox Dashboard](https://app.testflight.tremendous.com/)\n"
}
CampaignsGetAll401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetAll429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetAll500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetAllResponse
{
"type": "object",
"required": [
"campaigns"
],
"properties": {
"campaigns": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"description",
"products"
],
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"name": {
"type": "string",
"example": "My Default Campaign",
"description": "Name of the campaign"
},
"products": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"example": [
"P3MR06THYM8R",
"EFMULTF26PMR"
],
"description": "List of IDs of products (different gift cards, charity, etc.) that are available in this campaign.\n"
},
"description": {
"type": "string",
"example": "A campaign I use as the default in Tremendous\"",
"nullable": true,
"description": "Description of the campaign"
}
},
"description": "With a campaign you can define the look & feel of how rewards are sent out.\nIt also lets you set the available products (different gift cards, charity, etc.)\nrecipients can choose from.\n\n> Note: Campaigns must be created from the Tremendous dashboard.\n>\n> • [Production Dashboard](https://app.tremendous.com)\n> • [Sandbox Dashboard](https://app.testflight.tremendous.com/)\n"
}
}
}
}
CampaignsGetById401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetById404Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetById429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetById500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
CampaignsGetByIdResponse
{
"type": "object",
"required": [
"campaign"
],
"properties": {
"campaign": {
"type": "object",
"required": [
"id",
"name",
"description",
"products"
],
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"name": {
"type": "string",
"example": "My Default Campaign",
"description": "Name of the campaign"
},
"products": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"example": [
"P3MR06THYM8R",
"EFMULTF26PMR"
],
"description": "List of IDs of products (different gift cards, charity, etc.) that are available in this campaign.\n"
},
"description": {
"type": "string",
"example": "A campaign I use as the default in Tremendous\"",
"nullable": true,
"description": "Description of the campaign"
}
},
"description": "With a campaign you can define the look & feel of how rewards are sent out.\nIt also lets you set the available products (different gift cards, charity, etc.)\nrecipients can choose from.\n\n> Note: Campaigns must be created from the Tremendous dashboard.\n>\n> • [Production Dashboard](https://app.tremendous.com)\n> • [Sandbox Dashboard](https://app.testflight.tremendous.com/)\n"
}
}
}
CreateInvoice
{
"type": "object",
"required": [
"amount"
],
"properties": {
"memo": {
"type": "string",
"nullable": true,
"description": "A note to be included in the invoice. This is for your internal use and will not be visible to the recipient.\n"
},
"amount": {
"type": "number",
"format": "double",
"example": 50.35,
"description": "Amount of the invoice in USD"
},
"po_number": {
"type": "string",
"example": "123-PO-EE",
"nullable": true,
"description": "Reference to the purchase order number within your organization"
}
}
}
CreateMember
{
"type": "object",
"required": [
"email",
"name",
"role"
],
"properties": {
"name": {
"type": "string",
"example": "Jane Doe",
"description": "Full name of the member"
},
"role": {
"enum": [
"MEMBER",
"ADMIN"
],
"type": "string",
"example": "MEMBER",
"description": "Role of the member within the organization.\n\n<table>\n <thead>\n <tr>\n <th>Role</th>\n <th>Description</th>\n </tr>\n </thead>\n <tr>\n <td><code>MEMBER</code></td>\n <td>Limited permissions. Can view their own reward and order histories only.</td>\n </tr>\n <tr>\n <td><code>ADMIN</code></td>\n <td>Update organization settings, invite other members to the organization, and view all member order and reward histories within their organization.</td>\n </tr>\n <tbody>\n</table>\n"
},
"email": {
"type": "string",
"format": "email",
"example": "jane@example.com",
"description": "Email address of the member"
}
}
}
CreateOrganization
{
"type": "object",
"required": [
"name",
"website"
],
"properties": {
"name": {
"type": "string",
"example": "ACME Inc.",
"description": "Name of the organization"
},
"phone": {
"type": "string",
"example": "123-456-7890",
"description": "Phone number of the organization. For non-US phone numbers, specify the country code (prefixed with +)."
},
"website": {
"type": "string",
"format": "uri",
"example": "https://www.example.com/some-org",
"description": "URL of the website of that organization"
},
"with_api_key": {
"type": "boolean",
"example": true,
"description": "Default value is `false`. Set to true to also generate an API key associated to the new organization."
},
"copy_settings": {
"type": "object",
"properties": {
"users": {
"type": "boolean",
"default": false,
"example": false,
"description": "Copy over the users from the current organization to the new organization. Defaults to `false`."
},
"campaigns": {
"type": "boolean",
"default": false,
"example": false,
"description": "Copy over the campaigns from the current organization to the new organization. Defaults to `false`."
},
"custom_fields": {
"type": "boolean",
"default": false,
"example": false,
"description": "Copy over the custom fields from the current organization to the new organization. Defaults to `false`."
},
"order_approvals": {
"type": "boolean",
"default": false,
"example": false,
"description": "Copy over the order approvals settings from the current organization to the new organization. Defaults to `false`."
},
"payment_methods": {
"type": "boolean",
"default": false,
"example": false,
"description": "Copy over the payment methods from the current organization to the new organization. Defaults to `false`."
},
"fraud_prevention": {
"type": "boolean",
"default": false,
"example": false,
"description": "Copy over the fraud prevention settings and rules from the current organization to the new organization. Defaults to `false`."
},
"security_settings": {
"type": "boolean",
"default": true,
"example": true,
"description": "Copy over the security settings from the current organization to the new organization. Defaults to `true`."
}
},
"description": "A list of the settings that you wish to copy over to the new organization."
}
}
}
CurrencyCodes
{
"enum": [
"USD",
"CAD",
"EUR",
"AED",
"AFN",
"ALL",
"AMD",
"ARS",
"AUD",
"AZN",
"BAM",
"BDT",
"BGN",
"BHD",
"BIF",
"BND",
"BOB",
"BRL",
"BWP",
"BYR",
"BZD",
"CDF",
"CHF",
"CLP",
"CNY",
"COP",
"CRC",
"CVE",
"CZK",
"DJF",
"DKK",
"DOP",
"DZD",
"EEK",
"EGP",
"ERN",
"ETB",
"GBP",
"GEL",
"GHS",
"GNF",
"GTQ",
"HKD",
"HNL",
"HRK",
"HUF",
"IDR",
"ILS",
"INR",
"IQD",
"IRR",
"ISK",
"JMD",
"JOD",
"JPY",
"KES",
"KHR",
"KRW",
"KWD",
"KZT",
"LBP",
"LKR",
"LTL",
"LVL",
"MAD",
"MDL",
"MGA",
"MKD",
"MMK",
"MOP",
"MUR",
"MXN",
"MYR",
"MZN",
"NAD",
"NGN",
"NIO",
"NOK",
"NPR",
"NZD",
"OMR",
"PAB",
"PEN",
"PHP",
"PKR",
"PLN",
"PYG",
"QAR",
"RON",
"RSD",
"RUB",
"RWF",
"SAR",
"SDG",
"SEK",
"SGD",
"SOS",
"SYP",
"THB",
"TND",
"TOP",
"TRY",
"TTD",
"TWD",
"TZS",
"UAH",
"UGX",
"UYU",
"UZS",
"VEF",
"VND",
"XAF",
"XOF",
"YER",
"ZAR",
"ZMK"
],
"type": "string",
"example": "USD"
}
CustomField
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": false,
"description": "Tremendous ID of the custom field"
},
"label": {
"type": "string",
"example": "harry_potter_house",
"readOnly": false,
"description": "Label of the custom field"
},
"value": {
"type": "string",
"example": "Hufflepuff",
"nullable": true,
"readOnly": false,
"description": "Value of the custom field"
}
},
"description": "Reward custom data for searching, tracking or copy (see [Adding custom fields to orders](https://developers.tremendous.com/reference/using-custom-fields-to-add-custom-data-to-rewards).)"
}
DeliveryDetails
{
"type": "object",
"required": [
"method",
"status"
],
"properties": {
"method": {
"enum": [
"EMAIL",
"LINK",
"PHONE"
],
"type": "string",
"description": "How to deliver the reward to the recipient.\n\n<table>\n <thead>\n <tr>\n <th>Delivery Method</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>EMAIL</code></td>\n <td>Deliver the reward to the recipient by email</td>\n </tr>\n <tr>\n <td><code>LINK</code></td>\n <td>\n <p>Deliver the reward to the recipient via a link.</p>\n <p>The link can be retrieved on a successfully ordered reward via the <code>/rewards</code> or <code>/rewards/{id}</code> endpoint. That link must then be delivered to the recipient out-of-band.</p>\n </td>\n </tr>\n <tr>\n <td><code>PHONE</code></td>\n <td>Deliver the reward to the recipient by SMS</td>\n </tr>\n </tbody>\n</table>\n"
},
"status": {
"enum": [
"SCHEDULED",
"FAILED",
"SUCCEEDED",
"PENDING"
],
"type": "string",
"readOnly": true,
"description": "Current status of the delivery of the reward:\n\n* `SCHEDULED` - Reward is scheduled for delivery and will be delivered soon.\n* `FAILED` - Delivery of reward failed (e.g. email bounced).\n* `SUCCEEDED` - Reward was successfully delivered (email or text message delivered or reward link opened).\n* `PENDING` - Delivery is pending but not yet scheduled.\n"
}
},
"description": "Details on how the reward is delivered to the recipient.\n"
}
DeliveryDetailsWithLink
{
"type": "object",
"required": [
"method",
"status"
],
"properties": {
"link": {
"type": "string",
"example": "https://testflight.tremendous.com/rewards/payout/z67jic92r",
"readOnly": true,
"description": "Link to redeem the reward at. You need to deliver this link to the recipient.\n\nOnly available for rewards for which the `method` for delivery is set to `LINK`.\n"
},
"method": {
"enum": [
"EMAIL",
"LINK",
"PHONE"
],
"type": "string",
"description": "How to deliver the reward to the recipient.\n\n<table>\n <thead>\n <tr>\n <th>Delivery Method</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>EMAIL</code></td>\n <td>Deliver the reward to the recipient by email</td>\n </tr>\n <tr>\n <td><code>LINK</code></td>\n <td>\n <p>Deliver the reward to the recipient via a link.</p>\n <p>The link can be retrieved on a successfully ordered reward via the <code>/rewards</code> or <code>/rewards/{id}</code> endpoint. That link must then be delivered to the recipient out-of-band.</p>\n </td>\n </tr>\n <tr>\n <td><code>PHONE</code></td>\n <td>Deliver the reward to the recipient by SMS</td>\n </tr>\n </tbody>\n</table>\n"
},
"status": {
"enum": [
"SCHEDULED",
"FAILED",
"SUCCEEDED",
"PENDING"
],
"type": "string",
"readOnly": true,
"description": "Current status of the delivery of the reward:\n\n* `SCHEDULED` - Reward is scheduled for delivery and will be delivered soon.\n* `FAILED` - Delivery of reward failed (e.g. email bounced).\n* `SUCCEEDED` - Reward was successfully delivered (email or text message delivered or reward link opened).\n* `PENDING` - Delivery is pending but not yet scheduled.\n"
}
},
"description": "Details on how the reward is delivered to the recipient.\n"
}
DeliveryMethod
{
"enum": [
"EMAIL",
"LINK",
"PHONE"
],
"type": "string",
"description": "How to deliver the reward to the recipient.\n\n<table>\n <thead>\n <tr>\n <th>Delivery Method</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>EMAIL</code></td>\n <td>Deliver the reward to the recipient by email</td>\n </tr>\n <tr>\n <td><code>LINK</code></td>\n <td>\n <p>Deliver the reward to the recipient via a link.</p>\n <p>The link can be retrieved on a successfully ordered reward via the <code>/rewards</code> or <code>/rewards/{id}</code> endpoint. That link must then be delivered to the recipient out-of-band.</p>\n </td>\n </tr>\n <tr>\n <td><code>PHONE</code></td>\n <td>Deliver the reward to the recipient by SMS</td>\n </tr>\n </tbody>\n</table>\n"
}
DeliveryStatus
{
"enum": [
"SCHEDULED",
"FAILED",
"SUCCEEDED",
"PENDING"
],
"type": "string",
"readOnly": true,
"description": "Current status of the delivery of the reward:\n\n* `SCHEDULED` - Reward is scheduled for delivery and will be delivered soon.\n* `FAILED` - Delivery of reward failed (e.g. email bounced).\n* `SUCCEEDED` - Reward was successfully delivered (email or text message delivered or reward link opened).\n* `PENDING` - Delivery is pending but not yet scheduled.\n"
}
ErrorModel
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
Field
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": true
},
"data": {
"type": "object",
"additionalProperties": true
},
"label": {
"type": "string",
"example": "recipient_name",
"description": "Label of the field"
},
"scope": {
"type": "string",
"example": "REWARD",
"description": "Type of objects this field gets associated with"
},
"required": {
"type": "boolean",
"example": true,
"description": "Is this field required (true) or optional (false)"
},
"data_type": {
"type": "string",
"example": "Text",
"description": "Type of the values of the field"
}
}
}
FieldsGetCustomFields401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FieldsGetCustomFields429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FieldsGetCustomFields500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FieldsGetCustomFieldsResponse
{
"type": "object",
"properties": {
"fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"data": {
"type": "object",
"additionalProperties": true
},
"label": {
"type": "string",
"example": "recipient_name",
"description": "Label of the field"
},
"scope": {
"type": "string",
"example": "REWARD",
"description": "Type of objects this field gets associated with"
},
"required": {
"type": "boolean",
"example": true,
"description": "Is this field required (true) or optional (false)"
},
"data_type": {
"type": "string",
"example": "Text",
"description": "Type of the values of the field"
}
}
}
}
}
}
FundingSource
{
"type": "object",
"required": [
"id",
"method",
"meta"
],
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": true
},
"meta": {
"type": "object",
"properties": {
"last4": {
"type": "string",
"example": "1234",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `credit_card`.**\n\nLast 4 digits of the credit card number\n"
},
"expired": {
"type": "boolean",
"example": false,
"description": "**Only available when `method` is set to `credit_card`.**\n\nIs this credit card expired\n"
},
"network": {
"enum": [
"MasterCard",
"Amex",
"JCB",
"Diner's Club",
"visa",
"discover",
"laser",
"elo",
"maestro",
"solo"
],
"type": "string",
"example": "Amex",
"description": "**Only available when `method` is set to `credit_card`.**\n\nNetwork of the credit card\n"
},
"bank_name": {
"type": "string",
"example": "Bank of Fancyland",
"nullable": true,
"description": "**Only available when `method` is set to `bank_account`.**\n\nName of the bank\n"
},
"refundable": {
"type": "boolean",
"example": false,
"description": "**Only available when `method` is set to `bank_account`.**\n\nCan refunds be deposited to this bank account\n"
},
"account_type": {
"enum": [
"checking",
"savings"
],
"type": "string",
"example": "checking",
"description": "**Only available when `method` is set to `bank_account`.**\n\nIs this a checking or savings account\n"
},
"pending_cents": {
"type": "integer",
"example": 25000,
"description": "**Only available when `method` is set to `balance`.**\n\nFunds that are already registered on your Tremendous account but which have not yet been deposited in your account (e.g. unpaid invoices) (in Cents USD).\n"
},
"available_cents": {
"type": "integer",
"example": 50000,
"description": "**Only available when `method` is set to `balance`.**\n\nAvailable amount for this funding source (in Cents USD)\n"
},
"accountholder_name": {
"type": "string",
"example": "Jane Doe",
"description": "**Only available when `method` is set to `bank_account` or `credit_card`.**\n\nName of the holder of the bank account or credit_card\n"
},
"account_number_mask": {
"type": "string",
"example": "1234",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `bank_account`.**\n\nLast 4 digits of the account number\n"
},
"account_routing_mask": {
"type": "string",
"example": "5678",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `bank_account`.**\n\nLast 4 digits of the routing number\n"
},
"last_payment_failed_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "**Only available when `method` is set to `bank_account` or `credit_card`.**\n\nPoint in time when the last order failed using this bank account or credit card as a funding source.\n"
}
}
},
"type": {
"enum": [
"COMMERCIAL",
"PRO_FORMA",
"PREFUNDING_ONLY"
],
"type": "string",
"example": "COMMERCIAL",
"description": "**Only available when `method` is set to `invoice`.**\n"
},
"method": {
"enum": [
"balance",
"bank_account",
"credit_card",
"invoice"
],
"type": "string",
"example": "balance",
"description": "You can pay for rewards using different payment methods on Tremendous:\n\n<table>\n <thead>\n <tr>\n <th>Payment Method</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>balance</code></td>\n <td>Pre-funded balance in your Tremendous account to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>bank_account</code></td>\n <td>Bank account to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>credit_card</code></td>\n <td>Credit card to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>invoice</code></td>\n <td>Send rewards to recipients and pay by invoice.</td>\n </tr>\n\n </tbody>\n</table>\n"
}
},
"description": ""
}
FundingSourcesGetAll401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetAll429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetAll500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetAllResponse
{
"type": "object",
"required": [
"funding_sources"
],
"properties": {
"funding_sources": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"method",
"meta"
],
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"meta": {
"type": "object",
"properties": {
"last4": {
"type": "string",
"example": "1234",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `credit_card`.**\n\nLast 4 digits of the credit card number\n"
},
"expired": {
"type": "boolean",
"example": false,
"description": "**Only available when `method` is set to `credit_card`.**\n\nIs this credit card expired\n"
},
"network": {
"enum": [
"MasterCard",
"Amex",
"JCB",
"Diner's Club",
"visa",
"discover",
"laser",
"elo",
"maestro",
"solo"
],
"type": "string",
"example": "Amex",
"description": "**Only available when `method` is set to `credit_card`.**\n\nNetwork of the credit card\n"
},
"bank_name": {
"type": "string",
"example": "Bank of Fancyland",
"nullable": true,
"description": "**Only available when `method` is set to `bank_account`.**\n\nName of the bank\n"
},
"refundable": {
"type": "boolean",
"example": false,
"description": "**Only available when `method` is set to `bank_account`.**\n\nCan refunds be deposited to this bank account\n"
},
"account_type": {
"enum": [
"checking",
"savings"
],
"type": "string",
"example": "checking",
"description": "**Only available when `method` is set to `bank_account`.**\n\nIs this a checking or savings account\n"
},
"pending_cents": {
"type": "integer",
"example": 25000,
"description": "**Only available when `method` is set to `balance`.**\n\nFunds that are already registered on your Tremendous account but which have not yet been deposited in your account (e.g. unpaid invoices) (in Cents USD).\n"
},
"available_cents": {
"type": "integer",
"example": 50000,
"description": "**Only available when `method` is set to `balance`.**\n\nAvailable amount for this funding source (in Cents USD)\n"
},
"accountholder_name": {
"type": "string",
"example": "Jane Doe",
"description": "**Only available when `method` is set to `bank_account` or `credit_card`.**\n\nName of the holder of the bank account or credit_card\n"
},
"account_number_mask": {
"type": "string",
"example": "1234",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `bank_account`.**\n\nLast 4 digits of the account number\n"
},
"account_routing_mask": {
"type": "string",
"example": "5678",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `bank_account`.**\n\nLast 4 digits of the routing number\n"
},
"last_payment_failed_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "**Only available when `method` is set to `bank_account` or `credit_card`.**\n\nPoint in time when the last order failed using this bank account or credit card as a funding source.\n"
}
}
},
"type": {
"enum": [
"COMMERCIAL",
"PRO_FORMA",
"PREFUNDING_ONLY"
],
"type": "string",
"example": "COMMERCIAL",
"description": "**Only available when `method` is set to `invoice`.**\n"
},
"method": {
"enum": [
"balance",
"bank_account",
"credit_card",
"invoice"
],
"type": "string",
"example": "balance",
"description": "You can pay for rewards using different payment methods on Tremendous:\n\n<table>\n <thead>\n <tr>\n <th>Payment Method</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>balance</code></td>\n <td>Pre-funded balance in your Tremendous account to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>bank_account</code></td>\n <td>Bank account to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>credit_card</code></td>\n <td>Credit card to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>invoice</code></td>\n <td>Send rewards to recipients and pay by invoice.</td>\n </tr>\n\n </tbody>\n</table>\n"
}
},
"description": ""
}
}
}
}
FundingSourcesGetById401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetById404Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetById429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetById500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
FundingSourcesGetByIdResponse
{
"type": "object",
"required": [
"funding_source"
],
"properties": {
"funding_source": {
"type": "object",
"required": [
"id",
"method",
"meta"
],
"properties": {
"id": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"meta": {
"type": "object",
"properties": {
"last4": {
"type": "string",
"example": "1234",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `credit_card`.**\n\nLast 4 digits of the credit card number\n"
},
"expired": {
"type": "boolean",
"example": false,
"description": "**Only available when `method` is set to `credit_card`.**\n\nIs this credit card expired\n"
},
"network": {
"enum": [
"MasterCard",
"Amex",
"JCB",
"Diner's Club",
"visa",
"discover",
"laser",
"elo",
"maestro",
"solo"
],
"type": "string",
"example": "Amex",
"description": "**Only available when `method` is set to `credit_card`.**\n\nNetwork of the credit card\n"
},
"bank_name": {
"type": "string",
"example": "Bank of Fancyland",
"nullable": true,
"description": "**Only available when `method` is set to `bank_account`.**\n\nName of the bank\n"
},
"refundable": {
"type": "boolean",
"example": false,
"description": "**Only available when `method` is set to `bank_account`.**\n\nCan refunds be deposited to this bank account\n"
},
"account_type": {
"enum": [
"checking",
"savings"
],
"type": "string",
"example": "checking",
"description": "**Only available when `method` is set to `bank_account`.**\n\nIs this a checking or savings account\n"
},
"pending_cents": {
"type": "integer",
"example": 25000,
"description": "**Only available when `method` is set to `balance`.**\n\nFunds that are already registered on your Tremendous account but which have not yet been deposited in your account (e.g. unpaid invoices) (in Cents USD).\n"
},
"available_cents": {
"type": "integer",
"example": 50000,
"description": "**Only available when `method` is set to `balance`.**\n\nAvailable amount for this funding source (in Cents USD)\n"
},
"accountholder_name": {
"type": "string",
"example": "Jane Doe",
"description": "**Only available when `method` is set to `bank_account` or `credit_card`.**\n\nName of the holder of the bank account or credit_card\n"
},
"account_number_mask": {
"type": "string",
"example": "1234",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `bank_account`.**\n\nLast 4 digits of the account number\n"
},
"account_routing_mask": {
"type": "string",
"example": "5678",
"pattern": "[0-9]{4}",
"description": "**Only available when `method` is set to `bank_account`.**\n\nLast 4 digits of the routing number\n"
},
"last_payment_failed_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "**Only available when `method` is set to `bank_account` or `credit_card`.**\n\nPoint in time when the last order failed using this bank account or credit card as a funding source.\n"
}
}
},
"type": {
"enum": [
"COMMERCIAL",
"PRO_FORMA",
"PREFUNDING_ONLY"
],
"type": "string",
"example": "COMMERCIAL",
"description": "**Only available when `method` is set to `invoice`.**\n"
},
"method": {
"enum": [
"balance",
"bank_account",
"credit_card",
"invoice"
],
"type": "string",
"example": "balance",
"description": "You can pay for rewards using different payment methods on Tremendous:\n\n<table>\n <thead>\n <tr>\n <th>Payment Method</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>balance</code></td>\n <td>Pre-funded balance in your Tremendous account to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>bank_account</code></td>\n <td>Bank account to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>credit_card</code></td>\n <td>Credit card to draw funds from to send rewards to recipients.</td>\n </tr>\n <tr>\n <td><code>invoice</code></td>\n <td>Send rewards to recipients and pay by invoice.</td>\n </tr>\n\n </tbody>\n</table>\n"
}
},
"description": ""
}
}
}
Invoice
{
"type": "object",
"required": [
"id",
"amount",
"status",
"created_at",
"paid_at"
],
"properties": {
"id": {
"type": "string",
"example": "PPS-26873",
"description": "The invoice number"
},
"amount": {
"type": "number",
"format": "double",
"example": 50.35,
"description": "Amount of the invoice in USD"
},
"orders": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": true
},
"example": [
"ABC123456789",
"DEF123456789"
],
"description": "List of orders related to the invoice (it doesn't apply to prefunding)"
},
"status": {
"enum": [
"DELETED",
"PAID",
"OPEN",
"MARKED_AS_PAID"
],
"type": "string",
"example": "PAID",
"description": "Status of this invoice\n\n<table>\n <thead>\n <tr>\n <th>Status</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>DELETED</code></td>\n <td>Invoice has been deleted by your organization</td>\n </tr>\n <tr>\n <td><code>PAID</code></td>\n <td>Invoice has been paid by your organization</td>\n </tr>\n <tr>\n <td><code>OPEN</code></td>\n <td>Invoice has been created by your organization but has not been paid, yet</td>\n </tr>\n </tbody>\n</table>\n"
},
"paid_at": {
"type": "string",
"format": "date",
"nullable": true,
"description": "Timestamp of when the invoice has been paid.\n"
},
"rewards": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}",
"readOnly": true
},
"example": [
"ABC123456789",
"DEF123456789"
],
"description": "List of rewards related to the invoice (it doesn't apply to prefunding)"
},
"po_number": {
"type": "string",
"example": "123-PO-EE",
"nullable": true,
"description": "Reference to the purchase order number within your organization"
},
"created_at": {
"type": "string",
"format": "date",
"description": "Timestamp of when the invoice has been created.\n"
}
},
"description": "Invoices are instruments to fund your Tremendous account's balance.\n\nInvoices can be created by your organization programatically.\nOnce we receive your payment, the invoice is marked as `PAID` and we add\nthe respective funds to your account's balance.\n"
}
InvoicesCreateAndFundAccountBalance400Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
InvoicesCreateAndFundAccountBalance401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
InvoicesCreateAndFundAccountBalance429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
InvoicesCreateAndFundAccountBalance500Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
InvoicesCreateAndFundAccountBalanceRequest
{
"type": "object",
"required": [
"amount"
],
"properties": {
"memo": {
"type": "string",
"nullable": true,
"description": "A note to be included in the invoice. This is for your internal use and will not be visible to the recipient.\n"
},
"amount": {
"type": "number",
"format": "double",
"example": 50.35,
"description": "Amount of the invoice in USD"
},
"po_number": {
"type": "string",
"example": "123-PO-EE",
"nullable": true,
"description": "Reference to the purchase order number within your organization"
}
}
}
InvoicesCreateAndFundAccountBalanceResponse
{
"type": "object",
"required": [
"invoice"
],
"properties": {
"invoice": {
"type": "object",
"required": [
"id",
"amount",
"status",
"created_at",
"paid_at"
],
"properties": {
"id": {
"type": "string",
"example": "PPS-26873",
"description": "The invoice number"
},
"amount": {
"type": "number",
"format": "double",
"example": 50.35,
"description": "Amount of the invoice in USD"
},
"orders": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"example": [
"ABC123456789",
"DEF123456789"
],
"description": "List of orders related to the invoice (it doesn't apply to prefunding)"
},
"status": {
"enum": [
"DELETED",
"PAID",
"OPEN",
"MARKED_AS_PAID"
],
"type": "string",
"example": "PAID",
"description": "Status of this invoice\n\n<table>\n <thead>\n <tr>\n <th>Status</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td><code>DELETED</code></td>\n <td>Invoice has been deleted by your organization</td>\n </tr>\n <tr>\n <td><code>PAID</code></td>\n <td>Invoice has been paid by your organization</td>\n </tr>\n <tr>\n <td><code>OPEN</code></td>\n <td>Invoice has been created by your organization but has not been paid, yet</td>\n </tr>\n </tbody>\n</table>\n"
},
"paid_at": {
"type": "string",
"format": "date",
"nullable": true,
"description": "Timestamp of when the invoice has been paid.\n"
},
"rewards": {
"type": "array",
"items": {
"type": "string",
"example": "SOMEIDSOMEID",
"pattern": "[A-Z0-9]{4,20}"
},
"example": [
"ABC123456789",
"DEF123456789"
],
"description": "List of rewards related to the invoice (it doesn't apply to prefunding)"
},
"po_number": {
"type": "string",
"example": "123-PO-EE",
"nullable": true,
"description": "Reference to the purchase order number within your organization"
},
"created_at": {
"type": "string",
"format": "date",
"description": "Timestamp of when the invoice has been created.\n"
}
},
"description": "Invoices are instruments to fund your Tremendous account's balance.\n\nInvoices can be created by your organization programatically.\nOnce we receive your payment, the invoice is marked as `PAID` and we add\nthe respective funds to your account's balance.\n"
}
}
}
InvoicesGetAll401Response
{
"type": "object",
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}
InvoicesGetAll429Response
{
"type": "object",
"example": {
"errors": {
"message": "Too many requests",
"payload": {}
}
},
"required": [
"errors"
],
"properties": {
"errors": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Error message"
},
"payload": {
"type": "object",
"example": {
"rewards": {
"catalog": "At least one valid product required"
}
},
"description": "Mirrors the request parameters structure, filled only with the (nested) properties that caused an error."
}
}
}
}
}