Class: HubSpotSDK::Resources::Crm::Objects::Invoices::Batch

Inherits:
Object
  • Object
show all
Defined in:
lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Batch

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Batch.

Parameters:



141
142
143
# File 'lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb', line 141

def initialize(client:)
  @client = client
end

Instance Method Details

#create(inputs:, request_options: {}) ⇒ HubSpotSDK::Models::Crm::BatchResponseSimplePublicObject

Create multiple invoices at once by providing a batch of invoice data, and receive a response with details of the created invoices, including their IDs.



20
21
22
23
24
25
26
27
28
29
# File 'lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb', line 20

def create(params)
  parsed, options = HubSpotSDK::Crm::Objects::Invoices::BatchCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "crm/objects/2026-03/invoices/batch/create",
    body: parsed,
    model: HubSpotSDK::Crm::BatchResponseSimplePublicObject,
    options: options
  )
end

#delete(inputs:, request_options: {}) ⇒ nil

Archive multiple invoices by their IDs in a single request. This operation moves the specified invoices to the archive, making them inactive but retrievable for future reference.

Parameters:

Returns:

  • (nil)

See Also:



67
68
69
70
71
72
73
74
75
76
# File 'lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb', line 67

def delete(params)
  parsed, options = HubSpotSDK::Crm::Objects::Invoices::BatchDeleteParams.dump_request(params)
  @client.request(
    method: :post,
    path: "crm/objects/2026-03/invoices/batch/archive",
    body: parsed,
    model: NilClass,
    options: options
  )
end

#get(inputs:, properties:, properties_with_history:, archived: nil, id_property: nil, request_options: {}) ⇒ HubSpotSDK::Models::Crm::BatchResponseSimplePublicObject

Some parameter documentations has been truncated, see Models::Crm::Objects::Invoices::BatchGetParams for more details.

Retrieve records by record ID or include the ‘idProperty` parameter to retrieve records by a custom unique value property.

Parameters:

  • inputs (Array<HubSpotSDK::Models::Crm::SimplePublicObjectID>)

    Body param

  • properties (Array<String>)

    Body param: Key-value pairs for setting properties for the new object.

  • properties_with_history (Array<String>)

    Body param: Key-value pairs for setting properties for the new object and their

  • archived (Boolean)

    Query param: Whether to return only results that have been archived.

  • id_property (String)

    Body param: When using a custom unique value property to retrieve records, the n

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb', line 101

def get(params)
  query_params = [:archived]
  parsed, options = HubSpotSDK::Crm::Objects::Invoices::BatchGetParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed.slice(*query_params))
  @client.request(
    method: :post,
    path: "crm/objects/2026-03/invoices/batch/read",
    query: query,
    body: parsed.except(*query_params),
    model: HubSpotSDK::Crm::BatchResponseSimplePublicObject,
    options: options
  )
end

#update(inputs:, request_options: {}) ⇒ HubSpotSDK::Models::Crm::BatchResponseSimplePublicObject

Update multiple invoices in a single request using either their internal IDs or unique property values. This endpoint allows for efficient batch processing of invoice updates, ensuring that changes are applied consistently across multiple records.



44
45
46
47
48
49
50
51
52
53
# File 'lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb', line 44

def update(params)
  parsed, options = HubSpotSDK::Crm::Objects::Invoices::BatchUpdateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "crm/objects/2026-03/invoices/batch/update",
    body: parsed,
    model: HubSpotSDK::Crm::BatchResponseSimplePublicObject,
    options: options
  )
end

#upsert(inputs:, request_options: {}) ⇒ HubSpotSDK::Models::Crm::BatchResponseSimplePublicUpsertObject

Create or update records identified by a unique property value as specified by the ‘idProperty` query param. `idProperty` query param refers to a property whose values are unique for the object.



127
128
129
130
131
132
133
134
135
136
# File 'lib/hubspot_sdk/resources/crm/objects/invoices/batch.rb', line 127

def upsert(params)
  parsed, options = HubSpotSDK::Crm::Objects::Invoices::BatchUpsertParams.dump_request(params)
  @client.request(
    method: :post,
    path: "crm/objects/2026-03/invoices/batch/upsert",
    body: parsed,
    model: HubSpotSDK::Crm::BatchResponseSimplePublicUpsertObject,
    options: options
  )
end