> ## Documentation Index
> Fetch the complete documentation index at: https://developers.hubspot.es/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update multiple deals

> Update a group of existing deal records by their dealId. This endpoint takes a list of objectIds that correspond to the dealId of the deal you want to update, and a list of properties to update for each deal. Note: - This endpoint can only be used to update existing deal records based on their dealId. It cannot create new records
- Up to 100 deals can be updated in a single request. There is no limit to the number of properties that can be updated per deal.
- If there are any errors in the request, the entire request will fail and no updates will be applied to any records.
- The updates are processed asynchronously, so it may take several minutes to see the updates in HubSpot if you're sending a large number of updates.

export const ScopesList = ({scopes = [], description = "Esta API requiere uno de los siguientes ámbitos:"}) => {
  if (!scopes || scopes.length === 0) {
    return null;
  }
  const sortedScopes = scopes.sort((a, b) => a.localeCompare(b));
  return <div>
      <div className="text-sm mb-2">{description}</div>
      <div>
        {sortedScopes.map((scope, index) => <div key={index}>
            <code>
              <span className="text-xs">{scope}</span>
            </code>
          </div>)}
      </div>
    </div>;
};

<Accordion title="Scope requirements">
  <ScopesList scopes={['crm.objects.deals.read', 'crm.objects.deals.write']} />
</Accordion>


## OpenAPI

````yaml specs/legacy/v1/crm-deals-v1.json POST /deals/v1/batch-async/update
openapi: 3.0.0
info:
  title: CRM Deals API v1
  version: 1.0.0
  description: >-
    Use the deals API to create and manage CRM records that represent
    transactions with contacts and/or companies. Deals progress through pipeline
    stages to reflect whether the transaction has been completed, is active, or
    has otherwise been lost.
  x-hubspot-introduction: >-
    Use the deals API to create and manage CRM records that represent
    transactions with contacts and/or companies. Deals progress through pipeline
    stages to reflect whether the transaction has been completed, is active, or
    has otherwise been lost.
  x-hubspot-api-use-case: >-
    When a sales rep is negotiating a potential purchase with a prospective
    customer, create a deal record to track the negotiation process. When the
    customer later makes their purchase, you can update the deal to a closed
    stage.
servers:
  - url: https://api.hubapi.com
    description: HubSpot API Server
security: []
paths:
  /deals/v1/batch-async/update:
    post:
      summary: Update multiple deals
      description: >-
        Update a group of existing deal records by their dealId. This endpoint
        takes a list of objectIds that correspond to the dealId of the deal you
        want to update, and a list of properties to update for each deal. Note:
        - This endpoint can only be used to update existing deal records based
        on their dealId. It cannot create new records

        - Up to 100 deals can be updated in a single request. There is no limit
        to the number of properties that can be updated per deal.

        - If there are any errors in the request, the entire request will fail
        and no updates will be applied to any records.

        - The updates are processed asynchronously, so it may take several
        minutes to see the updates in HubSpot if you're sending a large number
        of updates.
      operationId: putdealsv1batchasyncupdate
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                properties:
                  objectId:
                    type: integer
                    description: The dealId of the deal that you want to update.
                  properties:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                        value:
                          type: string
                    description: >-
                      A list of properties that you want to update. Each
                      property must include the name of the property to be
                      updated, and the value of the property to update to.
      responses:
        '202':
          description: Accepted - Batch update request accepted and processing
      security:
        - oauth2:
            - crm.objects.deals.write
        - oauth2_legacy: []
        - private_apps:
            - crm.objects.deals.write
        - private_apps_legacy: []
components: {}

````