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

# Create a batch of appointments

> Crie vários agendamentos em uma única solicitação.

> **Supported products**

> **Required Scopes**


## OpenAPI

````yaml specs/2026-09/crm-appointments-v2026-09.json POST /crm/objects/2026-09/{objectType}/batch/create
openapi: 3.0.1
info:
  title: CRM Appointments
  description: Basepom for all HubSpot Projects
  version: 2026-09
  x-hubspot-product-tier-requirements:
    marketing: FREE
    sales: FREE
    service: FREE
    cms: FREE
    commerce: FREE
    crmHub: FREE
    dataHub: FREE
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Advanced
  - name: Basic
  - name: Batch
  - name: Search
paths:
  /crm/objects/2026-09/{objectType}/batch/create:
    post:
      tags:
        - Batch
      summary: Criar um lote de compromissos
      description: Crie vários agendamentos em uma única solicitação.
      operationId: >-
        post-/crm/objects/2026-09/{objectType}/batch/create_/crm/objects/2026-09-beta/{objectType}/batch/create
      parameters:
        - name: objectType
          in: path
          description: >-
            O tipo de objeto do CRM a ser criado em lote. Isso especifica a
            categoria de objetos que estão sendo criados, como contatos,
            empresas ou negócios.
          required: true
          style: simple
          explode: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/BatchInputSimplePublicObjectBatchInputForCreate
        required: true
      responses:
        '201':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchResponseSimplePublicObject'
        '207':
          description: multiple statuses
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchResponseSimplePublicObjectWithErrors'
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - crm.objects.deals.read
        - oauth2:
            - crm.objects.subscriptions.read
        - oauth2:
            - crm.objects.services.read
        - oauth2:
            - crm.objects.tickets.sensitive.read
        - oauth2:
            - crm.objects.orders.read
        - oauth2:
            - crm.objects.listings.write
        - oauth2:
            - crm.objects.custom.read
        - oauth2:
            - crm.objects.companies.write
        - oauth2:
            - crm.objects.tasks.read
        - oauth2:
            - crm.objects.custom.sensitive.write.v2
        - oauth2:
            - crm.objects.custom.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.companies.read
        - oauth2:
            - crm.objects.appointments.sensitive.read.v2
        - oauth2:
            - crm.objects.contacts.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.tickets.highly_sensitive.read
        - oauth2:
            - crm.objects.companies.sensitive.read.v2
        - oauth2:
            - crm.objects.tickets.sensitive.write
        - oauth2:
            - media_bridge.read
        - oauth2:
            - crm.objects.deals.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.contacts.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.companies.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.commercepayments.write
        - oauth2:
            - crm.objects.invoices.write
        - oauth2:
            - crm.objects.contacts.sensitive.write.v2
        - oauth2:
            - crm.objects.calls.read
        - oauth2:
            - crm.objects.users.write
        - oauth2:
            - crm.objects.meetings.read
        - oauth2:
            - crm.objects.custom.sensitive.read.v2
        - oauth2:
            - crm.objects.users.read
        - oauth2:
            - crm.objects.partner-services.read
        - oauth2:
            - crm.objects.orders.write
        - oauth2:
            - crm.objects.partner-services.write
        - oauth2:
            - crm.objects.appointments.write
        - oauth2:
            - crm.objects.projects.highly_sensitive.write
        - oauth2:
            - crm.objects.carts.write
        - oauth2:
            - crm.objects.tickets.highly_sensitive.write
        - oauth2:
            - crm.objects.commercepayments.read
        - oauth2:
            - crm.objects.products.write
        - oauth2:
            - crm.objects.feedback_submissions.read
        - oauth2:
            - crm.objects.services.write
        - oauth2:
            - crm.objects.subscriptions.write
        - oauth2:
            - crm.objects.deals.sensitive.write.v2
        - oauth2:
            - crm.objects.contacts.read
        - oauth2:
            - crm.objects.appointments.sensitive.write.v2
        - oauth2:
            - crm.objects.projects.highly_sensitive.read
        - oauth2:
            - crm.objects.invoices.read
        - oauth2:
            - crm.objects.custom.write
        - oauth2:
            - tickets.sensitive.v2
        - oauth2:
            - crm.objects.deals.write
        - oauth2:
            - e-commerce
        - oauth2:
            - crm.objects.appointments.read
        - oauth2:
            - crm.objects.projects.read
        - oauth2:
            - crm.objects.companies.sensitive.write.v2
        - oauth2:
            - crm.objects.companies.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.deals.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.custom.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.goals.write
        - oauth2:
            - crm.objects.projects.sensitive.read
        - oauth2:
            - crm.objects.line_items.write
        - oauth2:
            - crm.objects.contacts.write
        - oauth2:
            - crm.objects.goals.read
        - oauth2:
            - crm.objects.line_items.read
        - oauth2:
            - crm.objects.partner-clients.write
        - oauth2:
            - crm.objects.projects.write
        - oauth2:
            - crm.objects.projects.sensitive.write
        - oauth2:
            - crm.objects.deals.sensitive.read.v2
        - oauth2:
            - crm.objects.quotes.write
        - oauth2:
            - tickets.highly_sensitive.v2
        - oauth2:
            - crm.objects.leads.read
        - oauth2:
            - crm.objects.leads.write
        - oauth2:
            - crm.objects.carts.read
        - oauth2:
            - crm.objects.emails.read
        - oauth2:
            - crm.objects.quotes.read
        - oauth2:
            - crm.objects.courses.write
        - oauth2:
            - crm.objects.partner-clients.read
        - oauth2:
            - crm.objects.notes.read
        - oauth2:
            - crm.objects.courses.read
        - oauth2:
            - crm.objects.listings.read
        - oauth2:
            - crm.objects.contacts.sensitive.read.v2
        - oauth2:
            - crm.objects.products.read
components:
  schemas:
    BatchInputSimplePublicObjectBatchInputForCreate:
      required:
        - inputs
      type: object
      properties:
        inputs:
          type: array
          description: >-
            Matriz de objetos SimplePublicObjectBatchInputForCreate, cada um
            contendo propriedades e associações necessárias para criar um único
            objeto do CRM.
          items:
            $ref: '#/components/schemas/SimplePublicObjectBatchInputForCreate'
      description: >-
        Representa uma entrada em lote para criar vários objetos públicos
        simples em uma única solicitação. Este componente é usado para otimizar
        o processo de adição de novos objetos a uma conta HubSpot, permitindo
        que várias entradas sejam criadas de uma só vez.
    BatchResponseSimplePublicObject:
      required:
        - completedAt
        - results
        - startedAt
        - status
      type: object
      properties:
        completedAt:
          type: string
          description: >-
            A data e hora em que a operação em lote foi concluída, no formato
            ISO 8601.
          format: date-time
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Um mapa de nomes de links para URIs associadas relacionadas à
            operação em lote.
        requestedAt:
          type: string
          description: >-
            A data e a hora em que a operação em lote foi solicitada, no formato
            ISO 8601.
          format: date-time
        results:
          type: array
          description: >-
            Matriz de resultados da operação em lote, cada um representado como
            um SimplePublicObject.
          items:
            $ref: '#/components/schemas/SimplePublicObject'
        startedAt:
          type: string
          description: >-
            A data e a hora em que a operação em lote foi iniciada, no formato
            ISO 8601.
          format: date-time
        status:
          type: string
          description: >-
            O status atual da operação em lote. Os valores válidos incluem
            'PENDENTE', 'PROCESSANDO', 'CANCELADO' e 'CONCLUÍDO'.
          enum:
            - CANCELED
            - COMPLETE
            - PENDING
            - PROCESSING
      description: Um objeto de resposta em lote de objeto público
    BatchResponseSimplePublicObjectWithErrors:
      required:
        - completedAt
        - results
        - startedAt
        - status
      type: object
      properties:
        completedAt:
          type: string
          description: >-
            A data e hora em que a operação em lote foi concluída, no formato
            ISO 8601.
          format: date-time
        errors:
          type: array
          description: >-
            Uma matriz de objetos StandardError detalhando quaisquer erros que
            ocorreram durante a operação em lote.
          items:
            $ref: '#/components/schemas/StandardError'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Um mapa de nomes de links para URIs associadas, fornecendo
            informações ou recursos adicionais relacionados à operação em lote.
        numErrors:
          type: integer
          description: O número de erros encontrados durante a operação em lote.
          format: int32
        requestedAt:
          type: string
          description: >-
            A data e a hora em que a operação em lote foi solicitada, no formato
            ISO 8601.
          format: date-time
        results:
          type: array
          description: >-
            Uma matriz de itens SimplePublicObject representando os resultados
            da operação em lote.
          items:
            $ref: '#/components/schemas/SimplePublicObject'
        startedAt:
          type: string
          description: >-
            A data e a hora em que a operação em lote foi iniciada, no formato
            ISO 8601.
          format: date-time
        status:
          type: string
          description: >-
            O status atual da operação em lote. Os valores válidos incluem
            'PENDENTE', 'PROCESSANDO', 'CANCELADO' e 'CONCLUÍDO'.
          enum:
            - CANCELED
            - COMPLETE
            - PENDING
            - PROCESSING
      description: >-
        Representa o resultado de uma operação em lote em objetos do CRM,
        incluindo o status de processamento, resultados do lote, data/hora e uma
        lista de quaisquer erros encontrados durante a operação.
    SimplePublicObjectBatchInputForCreate:
      required:
        - associations
        - properties
      type: object
      properties:
        associations:
          type: array
          description: >-
            Matriz de associações que definem relacionamentos entre objetos do
            CRM criados e outros objetos. Cada associação é representada por um
            objeto 'PublicAssociationsForObject'.
          items:
            $ref: '#/components/schemas/PublicAssociationsForObject'
        objectWriteTraceId:
          type: string
          description: Um identificador para rastrear a solicitação de criação.
        properties:
          type: object
          additionalProperties:
            type: string
          description: Pares de chave-valor que representam as propriedades do objeto.
      description: >-
        Um objeto de entrada que contém uma coleção de objetos a serem criados
        juntos em lote.
    SimplePublicObject:
      required:
        - archived
        - createdAt
        - id
        - properties
        - updatedAt
      type: object
      properties:
        archived:
          type: boolean
          description: Um booleano que indica se este objeto está arquivado.
        archivedAt:
          type: string
          description: >-
            A data e a hora em que este objeto foi arquivado, no formato ISO
            8601.
          format: date-time
        createdAt:
          type: string
          description: A data e a hora em que este objeto foi criado, no formato ISO 8601.
          format: date-time
        id:
          type: string
          description: >-
            O identificador exclusivo para este objeto, representado como uma
            string.
        objectWriteTraceId:
          type: string
          description: >-
            Identificador exclusivo para cada operação de gravação, que será
            retornado juntamente com quaisquer erros para identificar qual
            solicitação encontrou qual erro.
        properties:
          type: object
          additionalProperties:
            type: string
          description: >-
            Um objeto que contém pares chave-valor representando as propriedades
            do objeto do CRM, onde cada chave é um nome de propriedade e o valor
            é uma string.
        propertiesWithHistory:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/ValueWithTimestamp'
          description: >-
            Objeto que contém pares de chave-valor, em que cada chave é um nome
            de propriedade e o valor é uma matriz de valores históricos, cada um
            com data/hora.
        updatedAt:
          type: string
          description: >-
            A data e a hora da última atualização deste objeto, no formato ISO
            8601.
          format: date-time
        url:
          type: string
          description: URL para acessar o objeto
        warnings:
          type: array
          description: >-
            Matriz de avisos associados a este objeto, cada um representado por
            um objeto PublicObjectWarning.
          items:
            $ref: '#/components/schemas/PublicObjectWarning'
      description: Um objeto público simples.
    StandardError:
      required:
        - category
        - context
        - errors
        - links
        - message
        - status
      type: object
      properties:
        category:
          type: string
          description: Uma string que categoriza o erro.
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: >-
            Um objeto que contém contexto adicional sobre o erro, com cada chave
            mapeada a uma matriz de strings.
        errors:
          type: array
          description: >-
            Uma matriz de objetos ErrorDetail que fornece mais informações sobre
            o erro.
          items:
            $ref: '#/components/schemas/ErrorDetail'
        id:
          type: string
          description: Uma string que representa o identificador exclusivo do erro.
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Um objeto que mapeia nomes de links para URIs associados que contêm
            documentação sobre o erro ou etapas de correção recomendadas.
        message:
          type: string
          description: Uma string contendo a mensagem de erro.
        status:
          type: string
          description: Uma string que indica o status do erro.
        subCategory:
          type: object
          properties: {}
          description: >-
            Um objeto que fornece detalhes mais específicos sobre a categoria do
            erro.
      description: >-
        Representa uma resposta de erro padrão na API do HubSpot, fornecendo
        informações detalhadas sobre um erro ocorrido durante uma solicitação de
        API.
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: A categoria de erro
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Contexto sobre a condição do erro
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            Um identificador exclusivo para a solicitação. Inclua este valor em
            relatórios de erro ou tickets de suporte
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: mais informações sobre o erro
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Um mapa de nomes de links para URIs associados que contêm
            documentação sobre o erro ou as etapas de correção recomendadas
        message:
          type: string
          description: >-
            Uma mensagem legível por humanos que descreve o erro, juntamente com
            as etapas de correção, quando apropriado
          example: An error occurred
        subCategory:
          type: string
          description: >-
            Uma categoria específica que contém mais detalhes específicos sobre
            o erro
      description: >-
        Representa uma resposta de erro retornada pela API quando uma operação
        falha. Este componente é usado em vários endpoints para fornecer
        informações detalhadas sobre o erro encontrado.
      example:
        message: Invalid input (details will vary based on the error)
        correlationId: aeb5f871-7f07-4993-9211-075dc63e7cbf
        category: VALIDATION_ERROR
        links:
          knowledge-base: https://www.hubspot.com/products/service/knowledge-base
    PublicAssociationsForObject:
      required:
        - to
        - types
      type: object
      properties:
        to:
          $ref: '#/components/schemas/PublicObjectId'
        types:
          type: array
          description: >-
            Uma matriz de especificações de associação, cada uma definindo a
            categoria e o ID do tipo de associação.
          items:
            $ref: '#/components/schemas/AssociationSpec'
      description: >-
        Representa as associações para um objeto específico no HubSpot,
        detalhando os tipos de associações e os objetos relacionados envolvidos.
    ValueWithTimestamp:
      required:
        - sourceType
        - timestamp
        - value
      type: object
      properties:
        sourceId:
          type: string
          description: >-
            Identificador exclusivo da origem da qual o valor foi derivado. É
            uma string.
        sourceLabel:
          type: string
          description: Um rótulo que descreve a origem do valor. É uma string.
        sourceType:
          type: string
          description: Tipo de origem de onde o valor foi derivado. É uma string.
        timestamp:
          type: string
          description: >-
            A data e a hora em que o registro foi adicionado, no formato ISO
            8601.
          format: date-time
        updatedByUserId:
          type: integer
          description: O ID do usuário que atualizou o valor. É um número inteiro.
          format: int32
        value:
          type: string
          description: O valor da propriedade no timestamp especificado. É uma string.
      description: Modelo de propriedade que inclui data e hora.
    PublicObjectWarning:
      required:
        - category
        - context
        - message
      type: object
      properties:
        category:
          type: string
          description: Uma string que indica a categoria do aviso.
        context:
          type: object
          additionalProperties:
            type: string
          description: >-
            Um objeto que fornece contexto adicional para o aviso, com
            propriedades de string.
        message:
          type: string
          description: Uma string contendo a mensagem de aviso.
      description: >-
        Representa uma mensagem de aviso relacionada a um objeto público no
        HubSpot, fornecendo detalhes sobre a natureza e o contexto do aviso.
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: O código de status associado ao detalhe do erro
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Contexto sobre a condição do erro
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: O nome do campo ou parâmetro no qual o erro foi encontrado.
        message:
          type: string
          description: >-
            Uma mensagem legível por humanos que descreve o erro, juntamente com
            as etapas de correção, quando apropriado
        subCategory:
          type: string
          description: >-
            Uma categoria específica que contém mais detalhes específicos sobre
            o erro
      description: >-
        Representa informações detalhadas sobre um erro ocorrido na API. Este
        componente é usado para fornecer contexto e detalhes adicionais sobre os
        erros, geralmente como parte de uma resposta de erro.
    PublicObjectId:
      required:
        - id
      type: object
      properties:
        id:
          type: string
          description: O ID exclusivo do objeto.
      description: Contains the Id of a Public Object
    AssociationSpec:
      required:
        - associationCategory
        - associationTypeId
      type: object
      properties:
        associationCategory:
          type: string
          description: >-
            Uma string que representa a categoria da associação. Os valores
            válidos incluem 'HUBSPOT_DEFINED', 'USER_DEFINED',
            'INTEGRATOR_DEFINED' e 'WORK'.
          enum:
            - HUBSPOT_DEFINED
            - INTEGRATOR_DEFINED
            - USER_DEFINED
            - WORK
        associationTypeId:
          type: integer
          description: >-
            Um número inteiro que representa o identificador exclusivo do tipo
            de associação.
          format: int32
      description: >-
        Define o tipo, a direção e os detalhes do relacionamento entre dois
        objetos do CRM.
  responses:
    Error:
      description: An error occurred.
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://app.hubspot.com/oauth/authorize
          tokenUrl: https://api.hubapi.com/oauth/v1/token
          scopes:
            crm.objects.appointments.read: ''
            crm.objects.appointments.sensitive.read.v2: ''
            crm.objects.appointments.sensitive.write.v2: ''
            crm.objects.appointments.write: ''
            crm.objects.calls.read: ''
            crm.objects.carts.read: ''
            crm.objects.carts.write: ''
            crm.objects.commercepayments.read: ''
            crm.objects.commercepayments.write: ''
            crm.objects.companies.highly_sensitive.read.v2: ''
            crm.objects.companies.highly_sensitive.write.v2: ''
            crm.objects.companies.read: ''
            crm.objects.companies.sensitive.read.v2: ''
            crm.objects.companies.sensitive.write.v2: ''
            crm.objects.companies.write: ''
            crm.objects.contacts.highly_sensitive.read.v2: ''
            crm.objects.contacts.highly_sensitive.write.v2: ''
            crm.objects.contacts.read: ''
            crm.objects.contacts.sensitive.read.v2: ''
            crm.objects.contacts.sensitive.write.v2: ''
            crm.objects.contacts.write: ''
            crm.objects.courses.read: ''
            crm.objects.courses.write: ''
            crm.objects.custom.highly_sensitive.read.v2: ''
            crm.objects.custom.highly_sensitive.write.v2: ''
            crm.objects.custom.read: ''
            crm.objects.custom.sensitive.read.v2: ''
            crm.objects.custom.sensitive.write.v2: ''
            crm.objects.custom.write: ''
            crm.objects.deals.highly_sensitive.read.v2: ''
            crm.objects.deals.highly_sensitive.write.v2: ''
            crm.objects.deals.read: ''
            crm.objects.deals.sensitive.read.v2: ''
            crm.objects.deals.sensitive.write.v2: ''
            crm.objects.deals.write: ''
            crm.objects.emails.read: ''
            crm.objects.feedback_submissions.read: ''
            crm.objects.goals.read: ''
            crm.objects.goals.write: ''
            crm.objects.invoices.read: ''
            crm.objects.invoices.write: ''
            crm.objects.leads.read: ''
            crm.objects.leads.write: ''
            crm.objects.line_items.read: ''
            crm.objects.line_items.write: ''
            crm.objects.listings.read: ''
            crm.objects.listings.write: ''
            crm.objects.meetings.read: ''
            crm.objects.notes.read: ''
            crm.objects.orders.read: ''
            crm.objects.orders.write: ''
            crm.objects.partner-clients.read: ''
            crm.objects.partner-clients.write: ''
            crm.objects.partner-services.read: ''
            crm.objects.partner-services.write: ''
            crm.objects.products.read: ''
            crm.objects.products.write: ''
            crm.objects.projects.highly_sensitive.read: ''
            crm.objects.projects.highly_sensitive.write: ''
            crm.objects.projects.read: ''
            crm.objects.projects.sensitive.read: ''
            crm.objects.projects.sensitive.write: ''
            crm.objects.projects.write: ''
            crm.objects.quotes.read: ''
            crm.objects.quotes.write: ''
            crm.objects.services.read: ''
            crm.objects.services.write: ''
            crm.objects.subscriptions.read: ''
            crm.objects.subscriptions.write: ''
            crm.objects.tasks.read: ''
            crm.objects.tickets.highly_sensitive.read: ''
            crm.objects.tickets.highly_sensitive.write: ''
            crm.objects.tickets.sensitive.read: ''
            crm.objects.tickets.sensitive.write: ''
            crm.objects.users.read: ''
            crm.objects.users.write: ''
            e-commerce: ''
            media_bridge.read: ''
            tickets.highly_sensitive.v2: ''
            tickets.sensitive.v2: ''

````