Skip to main content
PUT
/
invoices
/
{invoice}
/
line-item-groups
/
{id}
Update a Line Item Group
curl --request PUT \
  --url https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id} \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "Users",
  "description": "Charges for users",
  "taxCategoryId": "28227c88-6dba-455f-9b30-b9c76957e610",
  "revenueRecognitionMethod": "STRAIGHT_LINE",
  "revenueClassification": "EARNED",
  "servicePeriod": {
    "start": "2022-10-20",
    "endInclusive": "2022-10-24"
  },
  "index": 10
}
'
import requests

url = "https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id}"

payload = {
"title": "Users",
"description": "Charges for users",
"taxCategoryId": "28227c88-6dba-455f-9b30-b9c76957e610",
"revenueRecognitionMethod": "STRAIGHT_LINE",
"revenueClassification": "EARNED",
"servicePeriod": {
"start": "2022-10-20",
"endInclusive": "2022-10-24"
},
"index": 10
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "application/json"
}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PUT',
headers: {Authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({
title: 'Users',
description: 'Charges for users',
taxCategoryId: '28227c88-6dba-455f-9b30-b9c76957e610',
revenueRecognitionMethod: 'STRAIGHT_LINE',
revenueClassification: 'EARNED',
servicePeriod: {start: '2022-10-20', endInclusive: '2022-10-24'},
index: 10
})
};

fetch('https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'title' => 'Users',
'description' => 'Charges for users',
'taxCategoryId' => '28227c88-6dba-455f-9b30-b9c76957e610',
'revenueRecognitionMethod' => 'STRAIGHT_LINE',
'revenueClassification' => 'EARNED',
'servicePeriod' => [
'start' => '2022-10-20',
'endInclusive' => '2022-10-24'
],
'index' => 10
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id}"

payload := strings.NewReader("{\n \"title\": \"Users\",\n \"description\": \"Charges for users\",\n \"taxCategoryId\": \"28227c88-6dba-455f-9b30-b9c76957e610\",\n \"revenueRecognitionMethod\": \"STRAIGHT_LINE\",\n \"revenueClassification\": \"EARNED\",\n \"servicePeriod\": {\n \"start\": \"2022-10-20\",\n \"endInclusive\": \"2022-10-24\"\n },\n \"index\": 10\n}")

req, _ := http.NewRequest("PUT", url, payload)

req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.put("https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id}")
.header("Authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"Users\",\n \"description\": \"Charges for users\",\n \"taxCategoryId\": \"28227c88-6dba-455f-9b30-b9c76957e610\",\n \"revenueRecognitionMethod\": \"STRAIGHT_LINE\",\n \"revenueClassification\": \"EARNED\",\n \"servicePeriod\": {\n \"start\": \"2022-10-20\",\n \"endInclusive\": \"2022-10-24\"\n },\n \"index\": 10\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://eu.sequencehq.com/api/invoices/{invoice}/line-item-groups/{id}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"title\": \"Users\",\n \"description\": \"Charges for users\",\n \"taxCategoryId\": \"28227c88-6dba-455f-9b30-b9c76957e610\",\n \"revenueRecognitionMethod\": \"STRAIGHT_LINE\",\n \"revenueClassification\": \"EARNED\",\n \"servicePeriod\": {\n \"start\": \"2022-10-20\",\n \"endInclusive\": \"2022-10-24\"\n },\n \"index\": 10\n}"

response = http.request(request)
puts response.read_body
{
  "id": "941272d1-f840-4e16-b698-0cd455c81e0e",
  "invoiceId": "cd11218d-fa00-4faa-8684-a43113d076a8",
  "title": "Cars",
  "description": "Charges for cars",
  "index": 1,
  "netTotal": "200000",
  "totalTax": "10",
  "grossTotal": "22000",
  "taxCategory": {
    "id": "28227c88-6dba-455f-9b30-b9c76957e610",
    "name": "VAT"
  }
}
This response has no body data.
This response has no body data.
This response has no body data.

Headers

Authorization
string
required

Your API credentials. Eg. Basic {credentials}.

sequence-version
enum<string>

Use this header to select an API version

Available options:
2024-07-30

Path Parameters

invoice
string
required

The Invoice ID

id
string
required

Line Item Group ID

Body

application/json
title
string
required

Line Item Group Title

Example:

"Users"

description
string

Line Item Group Description

Example:

"Charges for users"

taxCategoryId
string

The tax category for all line items in this line item group

Example:

"28227c88-6dba-455f-9b30-b9c76957e610"

revenueRecognitionMethod
enum<string>

The revenue recognition method for all line items in this line item group

Available options:
STRAIGHT_LINE,
USAGE,
MILESTONE,
POINT_IN_TIME
Example:

"STRAIGHT_LINE"

revenueClassification
enum<string>

The revenue classification for all line items in this line item group

Available options:
PREPAYMENT,
EARNED,
BURNDOWN
Example:

"EARNED"

servicePeriod
object

Billing period

Example:
{
"start": "2022-10-01",
"endInclusive": "2022-10-30"
}
index
integer

Index (for maintaining order)

Example:

10

Response

OK

id
string
required

Line Item Group ID

Example:

"941272d1-f840-4e16-b698-0cd455c81e0e"

invoiceId
string
required

Invoice ID

Example:

"cd11218d-fa00-4faa-8684-a43113d076a8"

title
string
required

Line Item Group Title

Example:

"Cars"

index
integer
required

Index (for maintaining order)

Example:

1

netTotal
string
required

Net total, in decimal format of the Invoice's currency

Example:

"200000"

totalTax
string
required

Total tax, in decimal format of the Invoice's currency

Example:

"10"

grossTotal
string
required

Gross total, in decimal format of the Invoice's currency

Example:

"22000"

description
string

Line Item Group Description

Example:

"Charges for cars"

taxCategory
object

The tax category for all line items in this line item group

Example:
{
"id": "28227c88-6dba-455f-9b30-b9c76957e610",
"name": "VAT"
}