---
title: "Update organization contract"
method: PUT
path: "/api/organization/{organizationId}/contract/update"
tags: ["Organization"]
---

# Update organization contract

`PUT /api/organization/{organizationId}/contract/update`

## Request

- Base URL: `https://api.sponsorunited.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.sponsorunited.com/api/organization/{organizationId}/contract/update`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/sponsorunited/apis/sponsorunited-api/docs/api/organization/:organizationId/contract/update/put.ts> (a function with typed inputs; its response is checked against the schema)

Updates contract-related fields for an organization, including account limits, surface usage limits, subscription details, and Salesforce integration fields.

## Path parameters

- `organizationId` integer, required

## Request body

- OrganizationUpdateContractRequest
  - `account_manager_id` integer, nullable
  - `sales_user_id` integer, nullable
  - `contract_auto_renew` boolean, nullable
  - `contract_start_date` string, nullable
  - `contract_end_date` string, nullable
  - `contract_file_url` string, nullable
  - `contract_monthly_spend` number, nullable
  - `contract_onboarding_date` string, nullable
  - `contract_payment_type_id` integer, nullable
  - `contract_status_id` integer, nullable
  - `max_user_seats` integer, nullable: Seat cap for org-admin user management. `null` disables the feature, `-1` enables it with unlimited seats, `0` is normalized to `null`, and a positive value caps the organization at that many active users. Any other negative value is rejected.
  - `default_user_subscription_cancel_date` string, nullable
  - `default_user_subscription_plan_id` string, nullable
  - `default_user_subscription_product_name` string, nullable
  - `user_email_domain` string, nullable
  - `subscription_plan_id` string, nullable
  - `subscription_product_name` string, nullable
  - `trial_ends_at` string, nullable
  - `salesforce_id` string, nullable
  - `account_limit` object
    - `organization` object
      - `monthly` integer
      - `annual` integer
    - `user` object
      - `monthly` integer
      - `annual` integer
  - `surface_limit` object: Surface usage limits. Use `monthly` for the cap value and `type` for the scope.
    - `monthly` integer
    - `type` 'user' | 'organization'

## Response `200`

Successful operation

- OrganizationContractResource
  - `contract_status_id` integer
  - `contract_payment_type_id` integer
  - `contract_monthly_spend` integer
  - `contract_file_url` string
  - `contract_onboarding_date` string
  - `contract_start_date` string
  - `contract_end_date` string
  - `contract_auto_renew` integer
  - `max_user_seats` integer, nullable: Seat cap for org-admin user management. `null` means the feature is disabled, `-1` means unlimited seats, a positive value is the number of active users allowed.
  - `sales_user_id` integer
  - `salesforce_id` string
  - `account_manager_id` integer
  - `default_user_subscription_plan_id` string
  - `default_user_subscription_product_name` string
  - `default_user_subscription_cancel_date` string
  - `user_email_domain` string
  - `billable` unknown[]
    - unknown
  - `sales_user` object
    - `id` integer
    - `email` string
    - `currency` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `deleted_at` string, date-time
    - `last_active_at` string, date-time
    - `is_external` boolean
    - `verified` integer
    - `genuine` integer
    - `hubspot_id` integer
    - `hubspot_synced_on` string, date-time
    - `force_new_password` integer
    - `credentials_sent_at` string, date-time
    - `user_id` integer
    - `avatar_id` integer, nullable
    - `person_profile_job_role_id` integer, nullable
    - `market_id` integer, nullable
    - `name` string
    - `job_title` string, nullable
    - `location` string, nullable
    - `school` string, nullable
    - `info` string, nullable
    - `suggested` integer, nullable
    - `previous_suggested` integer, nullable
    - `approved` boolean
  - `account_manager` object
    - `id` integer
    - `email` string
    - `currency` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `deleted_at` string, date-time
    - `last_active_at` string, date-time
    - `is_external` boolean
    - `verified` integer
    - `genuine` integer
    - `hubspot_id` integer
    - `hubspot_synced_on` string, date-time
    - `force_new_password` integer
    - `credentials_sent_at` string, date-time
    - `user_id` integer
    - `avatar_id` integer, nullable
    - `person_profile_job_role_id` integer, nullable
    - `market_id` integer, nullable
    - `name` string
    - `job_title` string, nullable
    - `location` string, nullable
    - `school` string, nullable
    - `info` string, nullable
    - `suggested` integer, nullable
    - `previous_suggested` integer, nullable
    - `approved` boolean
  - `users` UserOrganizationResource[]
    - `user` object
      - `id` integer
      - `name` string
      - `email` string
      - `avatar` string
      - `is_external` string
      - `teams` UserOrganizationPropertiesResource[]
        - `id` integer
        - `name` integer
      - `brands` UserOrganizationBrandsResource[]
        - `id` integer
        - `name` integer
      - `agencies` UserOrganizationAgenciesResource[]
        - `id` integer
        - `name` integer
      - `created_at` string
      - `last_active_at` string
      - `deleted_at` string
      - `billable` unknown[]
        - unknown
  - `surface_monthly_limit` integer
  - `surface_limit_type` 'user' | 'organization'
  - `surface_monthly_balance` string

---

[API](https://skmtc.dev/sponsorunited/apis/sponsorunited-api.md) - [All operations](https://skmtc.dev/sponsorunited/apis/sponsorunited-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sponsorunited/apis/sponsorunited-api/revisions/cbf1ca5bff8f?raw)
