Creates a contract.
Endpoint URL
  https://{{base_url}}/api/v2/contract
Authentication and rate limits
| Item | Details | 
|---|---|
| Authentication method | OAuth 2.0 Bearer token | 
| Rate limit | Rate Limit | 
Requests Example
curl --request POST \
  --url "https://{{base_url}}/api/v2/contract" \
  --header "Authorization: Bearer $BEARER_TOKEN" \
  --header "Content-Type: application/json" \
  --data-raw "$JSON"
Request Syntax
{
    "company": integer,
    "contract_type": "buy_side"|"sell_side",
    "name": "string",
    "number": "string",
    "parent_contract":integer,
    "first_offer_value":decimal,
    "cost_avoidance_value":decimal,
    "contract_risk_value":decimal,
    "customer": integer,
    "supplier": integer,
    "country": integer,
    "status": "active" | "archived"| "cancelled" | "draft"| "expired" | "suspended"| "terminated",
    "category": {
        "id": integer,
        "subcategory": "string"
    },
    "description": "string",
    "business_unit": integer,
    "contract_start_date": "string",
    "contract_end_date": "string",
    "notice_period": integer,
    "service_start_date": "string",
    "end_of_term_clause": "auto_expires" | "auto_renewed",
    "end_of_term_action": "allow_auto_renew" | "allow_expiration" | "disallow_auto_renew" | "renegotiate",
    "timeline_notes": "string",
    "total_contract_spend_value": decimal,
    "mrc": decimal,
    "nrc": decimal,
    "expenditure_type":
    {
        "type": "blended" | "capex" | "opex",
        "capex_actual": decimal,
        "opex_actual": decimal
    },
    "payment_terms": "custom" | "net_30" | "net_45" | "net_60",
    "financing": "custom" | "financed" | "leased" | "self_paid",
    "financial_notes": "string",
    "template": {
        "id": integer,
        "fields": [
            {
                "id": integer,
                "value": decimal | integer | "string"
            }, 
        ]
    },
   "form_template": [
        {
            "id": integer,
            "custom_form_data":{
                        "field_name1": decimal | integer | "string",
                        "field_name2": decimal | integer | "string"
            }
        }
    ],
    "approver": "string",
    "signer": "string",
    "signed_date": "string"
}
Body Parameters
- company (integer) --
    
[REQUIRED]
The ID of the specific company your API is calling. For accounts with only one company, the default value is1.
To lookup a specific company ID, see the List Company API. - contract_type (string) --
    
[REQUIRED]
The type of the contract.
Options:buy_side|sell_side - name (string) --
    
[REQUIRED]
The name of the contract.
Max characters =50 - number (string) --
    
[REQUIRED]
The number of the contract.
Max characters =50 - parent_contract (integer) --
    
The ID of the parent contract.
 - first_offer_value (decimal) --
    
The first offer value of the contract.
Min value =0.00
Max value =999999999999999.00 - cost_avoidance_value (decimal) --
    
The cost avoidance value of the contract.
Min value =0.00
Max value =999999999999999.00 - contract_risk_value (decimal) --
    
The contract risk value of the contract.
Min value =0.00
Max value =999999999999999.00 - customer (integer) --
    
[REQUIRED if contract type is sell-side]
The ID of the customer.
To lookup a specific customer ID, see the List Customer API. - supplier (integer) --
    
[REQUIRED if contract type is buy-side]
The ID of the supplier.
To lookup a specific supplier ID, see the List Supplier API. - country (integer) --
    
[REQUIRED]
The numeric code of the country.
To lookup a specific country numeric code, see the List Country API. - status (string) --
    
[REQUIRED]
The status of the contract.
Options:active|archived - category (dict) --
    
- id (integer) --
        
[REQUIRED]
The ID of the category.
To lookup a specific category ID, see the List Category API. - subcategory (string) --
        
The name of the subcategory.
To lookup a specific subcategory, see the List Category API. 
 - id (integer) --
        
 - description (string) --
    
The description of the contract.
Max characters =1000 - business_unit (integer) --
    
The ID of the business unit.
To lookup a specific business unit ID, see the List Business Unit API. - contract_start_date (string) --
    
[REQUIRED]
The start date of the contract.
Format =yyyy-MM-dd
The contract start date must be before the contract end date. - contract_end_date (string) --
    
[REQUIRED]
The end date of the contract.
Format =yyyy-MM-dd
The contract start date must be before the contract end date. - notice_period (integer) --
    
The notice period (in days) of the contract.
The notice period must be less than duration of contract. - service_start_date (string) --
    
The service start date of the contract.
Format =yyyy-MM-dd
The service start date must be equal to or after the contract start date and before the contract end date. - end_of_term_clause (string) --
    
The end of term clause of the contract.
Options:auto_expires|auto_renewed - end_of_term_action (string) --
    
The end of term action of the contract.
Options:allow_auto_renew|allow_expiration|disallow_auto_renew|renegotiate - timeline_notes (string) --
    
The timeline notes of the contract.
Max characters =1000 - total_contract_spend_value (decimal) --
    
[REQUIRED]
The total contract spend or value of the contract.
Min value =0.00
Max value =999999999999999.00 - mrc (decimal) --
    
The monthly recurring cost (MRC) of the contract.
Min value =0.00
Max value =999999999999999.00 - nrc (decimal) --
    
The non recurring cost (NRC) of the contract.
Min value =0.00
Max value =999999999999999.00
The non recurring cost cannot be greater than the total contract spend. - expenditure_type (dict) --
    
- type (string) --
        
The expenditure type of the contract.
Options:blended|capex|opex - capex_actual (decimal) --
        
[REQUIRED] for
blendedexpenditure type
The capital expenditure (CapEx) value of the contract.
Min value =0.00
Max value =999999999999999.00
The sum of the capital expenditure value and the operating expense value must equal the total contract spend. - opex_actual (decimal) --
        
[REQUIRED] for
blendedexpenditure type
The operating expense (OpEx) value of the contract.
Min value =0.00
Max value =999999999999999.00
The sum of the capital expenditure value and the operating expense value must equal the total contract spend. 
 - type (string) --
        
 - payment_terms (string) --
    
The payment terms of the contract.
Options:custom|net_30|net_45|net_60 - financing (string) --
    
The financing of the contract.
Options:custom|financed|leased|self_paid - financial_notes (string) --
    
The financial notes of the contract.
Max characters =1000 - template (dict) --
    
- id (integer) --
        
The ID of the custom field template.
To lookup a specific custom field template ID, see the List Custom Field Template API. - fields (dict) --
        
- id (integer) --
            
The ID of the custom field.
To lookup a specific field ID, see the List Custom Field Template API. - value (decimal | integer | string) --
            
The value of the custom field.
- If the value data-type is 
money(decimal) --Min value =
0.00
Max value =999999999999999.00 - If the value data-type is 
number(integer) --Min value =
-999999999999999
Max value =999999999999999 - If the value data-type is 
date(string) --Format =
yyyy-MM-dd - If the value data-type is 
text(string) --Max characters =
50 
 - If the value data-type is 
 
 - id (integer) --
            
 
 - id (integer) --
        
 - approver (string) --
    
The approver of the contract.
Max characters =50 - signer (string) --
    
The signer of the contract.
Max characters =50 - signed_date (string) --
    
The signed date of the contract.
Max characters =50 
