Deals List Resource /v1/deals

Deal contains everything you need to know about an ongoing or closed-won deal.

Supported HTTP Methods

  • GET - Returns a list of <deal> objects.

List of Properties for <deal>

name type description
id string (UUID) id is a globally unique identifier addressing the deal.
status string (ENUM) An enumerated value representing the current deal. See Deal Status for options.
signedContractUrl string (URL) URL to the completed signed Contract. The field is null when signing has not started or incomplete.
contractActivatesDate string (ISO8601) The date of contract activation in ISO8601 format. All dates are in UTC.
opportunityId string The string representing the deal's associated Opportunity from the connected CRM.
originalNetPrice string (Money) The originalNetPrice describes a calculated total of the original deal without user-defined deviations.
originalNetPriceCurrency string (ENUM) See Currency section on supported currency values.
originalNetPricePrecision int Precision value right of the decimal of originalNetPrice.
netPrice string (Money) The netPrice describes a calculated total of the final deal amount with all user-defined deviations.
netPriceCurrency string (ENUM) See Currency section on supported currency values.
netPricePrecision int Precision value right of the decimal of netPrice.
skus array (sku Objects) A complete list of products (SKUs) associated with this deal. See SKUs section for more information.
terms array (term Objects) A complete list of Legal and Payment Terms associated with this deal. See Legal Terms section for more information.

Example GET /deals

curl -u $userid:$password -X GET https://api.revops.io/v1/deals

Property schema definitions for object models.

The following describes all higher-level object models described in <deal> properties.

<deal>.status

Deal Status describes the business workflow status.

List of Status Options for <deal>.status

name description
draft Deals in draft are private and not submitted for approval.
attention Deals in attention are to be responded to urgently defined by company's policy. Deals moved into this status can trigger notifications.
in-review Deals in in-review are under standard SLAs defined by company's deal desk.
approved Deals ready to be sent to customer's for negotiation are put in approved status.
negotiation Deals in negotation are available to be viewed publicly by the customer.
signing Deals in signing status are out for signature, where at least one signature has been submitted.
signed Deals in signed status have completed all buyer and seller signatures.
rejected Deals in rejected status are not available for signature. They can move back to draft by owners when being edited.
deleted Deals in deleted status are not available via the REST API and have been archived from users.

<deal>.skus<sku>

deal.skus contains a list of <sku> objects.

A <sku> is a product that defines a total charge or adjustment to the customer.

List of Properties for <sku>

Name Type Description
id string (UUID) id is a globally unique identifier addressing the sku.
friendlyName string Friendly name is a short string the SKU is referred to.
status string (ENUM) Status defines whether the SKU is active, retired, or archived.
quantity int An integer value representing the total quantity of the SKU.
title string Public title of the SKU used on customer facing contracts.
description string Public description of the SKU that is displayed on customer facing contracts.
originalDescription string Default public description the SKU used on customer facing contracts.
unitName string A singular or plural noun describing the SKU in units.
billingSchedule string (ENUM) The schedule the SKU will be charged on. Enumerated values: monthly, annual, quarterly, one-time, usage
skuGroup string (ENUM) A Sku Group defines how to group the sku together on a quote. Options are professional-services, fixed-costs, variable-costs.
featureFlags array <FeatureFlag> A list of feature flag objects configured for the SKU. See Feature Flags for definition of objects in array.
unitPrice string (Money) The list price defined by the user.
unitPriceCurrency string (ENUM) The currency of unitPrice.
unitPricePrecision int The precision of unitPrice.
originalUnitPrice string (Money) The original list price defined by the administrator.
originalUnitPriceCurrency string (ENUM) The currency of originalUnitPrice.
originalUnitPricePrecision int The precision of originalUnitPrice.
netPrice string (Money) The total price of the SKU on the contract.
netPriceCurrency string (ENUM) The currency of netPrice.
netPricePrecision int The precision of netPrice.
originalNetPrice string (Money) The total price of the SKU based on the originalUnitPrice.
originalNetPriceCurrency string (ENUM) The currency of originalNetPrice.
originalNetPricePrecision int The precision of originalNetPrice.
annualPrice string (Money) The annual price (12 x unitPrice x quantity) of the SKU based on user-defined values.
annualPriceCurrency string (ENUM) The currency of annualPrice.
annualPricePrecision int The precision of annualPrice.
originalAnnualPrice string (Money) The original annual price (12 x originalUnitPrice x quantity) of the SKU based on administrator-defined values.
originalAnnualPriceCurrency string (ENUM) The currency of originalAnnualPrice.
originalAnnualPricePrecision int The precision of originalAnnualPrice.
monthlyPrice string (Money) The monthly price of the SKU based on user-defined values.
monthlyPriceCurrency string (ENUM) The currency of monthlyPrice.
monthlyPricePrecision int The precision of monthlyPrice.
originalMonthlyPrice string (Money) The original monthly price of the SKU based on administrator-defined values.
originalMonthlyPriceCurrency string (ENUM) The currency of originalMonthlyPrice.
originalMonthlyPricePrecision int The precision of originalMonthlyPrice.
pricebookId string The CRM external identifier for what catalog the SKU belongs to.
productId string The CRM external identifier for what product the SKU represents.
productCode string The ledger code for what product the SKU's revenue is recognized in.

<sku>.featureFlags<featureFlag>

Feature Flags can be assigned to SKUs. They define what features are enabled and what restrictions can be set on products.

List of Properties for <featureFlag>

Name Type Description
id string (UUID) id is a globally unique identifier addressing the flag.
friendlyName string friendlyName is a label used to identify the feature flag.
mode string (ENUM) featureFlag.mode can be one of the following options: gate, limit.
enabled boolean Indicates if the flag is enabled for the current sku.
value string (Optional) Maximum value for limit

Example: Gate Flag to enable SSO.

{
  "name": "enable-sso",
  "mode": "gate",
  "enabled": true
}

Example: Limit Flag to set total allowed users to 10.

{
  "name": "user-limit",
  "mode": "limit",
  "enabled": true,
  "value": "10"
}

<deal>.terms<term>

deal.terms contains a list of <term> objects.

A <term> defines legal terms and conditions of a deal that customers must agree to.

List of Properties for <term>

Name Type Description
id string (UUID) id is a globally unique identifier addressing the sku.
description string Public description of the Term that is displayed on customer facing contracts.
friendlyName string Friendly name is a short string assigned to the Term
isModifiable boolean Indicates if term conditions are modifiable or must be accepted as defined
isReserved boolean Indicates if the term is one of the reserved RevOps legal terms
isStandard boolean Indicates if the term is standard for the customer organization and eligible for auto-approvals
type string (ENUM) Identifies the type of legal term. See <term>.type for possible values
value string Value of the the accepted term. Possible values are determined by <term>.type
valueOptions list List of valid value options for this legal term. See <term>.valueOption
variables list List of variables attached to the term. See <term>.variables

<term>.type

We can distinguish term types by the term.type property.

Built-in Term types

Built-in term types define important Terms that are needed to build a complete billing solutions for the Deal.

Term Type Category Description
accountId billing A Term with this type defines the identifier used to connect and synchronize accounts across your CRM and billing systems. This identifier is used to record usage data and create invoices.
billingStartDate billing A Term with this type defines the start date of the first Invoice. This will be a string ISO8601).
contractActivationDate billing A Term with this type defines the starting date of the Deal as a string (ISO8601).
contractTermLength billing A Term with this type defines the length of the contract in months.
daysUntilDue billing A Term with this type specifies the number of days until the Invoice is due.
latePaymentPercentageFee billing A Term with this type defines the penalty for late payment as a floating point number.
purchaseOrderNumber billing A Term with this type defines the purchase order number.

User defined Terms types

Term Type Description
boolean A Term containing arbitrary text.
date A Term containing a date field. This will be a string (ISO8601).
dropdown A Term containing a predefined set of valueOptions.
contract-period A Term containing the contract period as two ISO8601 datetime stings.
money A Term containing a monetary unit amount.
number A Term containing a number value.
text A Term containing arbitrary text defined by the Term Language.

<term>.valueOption

A valueOption are pre-defined values that customers can choose from.

Name Type Description
friendlyName string Friendly name is a short string assigned the value option
value string Value assigned to the term when selected by a customer

<term>.variables

Term variables can be attached to a term to provide added flexibility.

Name Type Description
defaultValue string Default value to assign to the variable when a new deal is created
friendlyName string Friendly name is a short string assigned the value option
value string Value assigned to the term when selected by a customer
variableName string A singular or plural noun describing the term variable.