Update custom field values
curl --request PUT \
--url https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"Customer PO": "PO-98765",
"Expected Delivery": "2024-12-25",
"Priority Level": "High",
"Item Count": 42
}
'import requests
url = "https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields"
payload = {
"Customer PO": "PO-98765",
"Expected Delivery": "2024-12-25",
"Priority Level": "High",
"Item Count": 42
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
'Customer PO': 'PO-98765',
'Expected Delivery': '2024-12-25',
'Priority Level': 'High',
'Item Count': 42
})
};
fetch('https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields', 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://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields",
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([
'Customer PO' => 'PO-98765',
'Expected Delivery' => '2024-12-25',
'Priority Level' => 'High',
'Item Count' => 42
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields"
payload := strings.NewReader("{\n \"Customer PO\": \"PO-98765\",\n \"Expected Delivery\": \"2024-12-25\",\n \"Priority Level\": \"High\",\n \"Item Count\": 42\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"Customer PO\": \"PO-98765\",\n \"Expected Delivery\": \"2024-12-25\",\n \"Priority Level\": \"High\",\n \"Item Count\": 42\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"Customer PO\": \"PO-98765\",\n \"Expected Delivery\": \"2024-12-25\",\n \"Priority Level\": \"High\",\n \"Item Count\": 42\n}"
response = http.request(request)
puts response.read_body{
"message": "Custom fields updated successfully"
}{
"message": "<string>"
}{
"message": "<string>"
}Custom Fields
Update custom field values
Update custom field values for a specific record.
Supported record types: sales-orders,sales-order-items,invoices,products
Values must match the field type (string, number, date, or dropdown).
Custom fields must be set up in Luminous before they can be updated or retrieved. Log into your Luminous account, then via the left navigation select Manage > Custom Fields.
PUT
/
{recordType}
/
{recordId}
/
custom-fields
Update custom field values
curl --request PUT \
--url https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"Customer PO": "PO-98765",
"Expected Delivery": "2024-12-25",
"Priority Level": "High",
"Item Count": 42
}
'import requests
url = "https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields"
payload = {
"Customer PO": "PO-98765",
"Expected Delivery": "2024-12-25",
"Priority Level": "High",
"Item Count": 42
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
'Customer PO': 'PO-98765',
'Expected Delivery': '2024-12-25',
'Priority Level': 'High',
'Item Count': 42
})
};
fetch('https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields', 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://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields",
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([
'Customer PO' => 'PO-98765',
'Expected Delivery' => '2024-12-25',
'Priority Level' => 'High',
'Item Count' => 42
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields"
payload := strings.NewReader("{\n \"Customer PO\": \"PO-98765\",\n \"Expected Delivery\": \"2024-12-25\",\n \"Priority Level\": \"High\",\n \"Item Count\": 42\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"Customer PO\": \"PO-98765\",\n \"Expected Delivery\": \"2024-12-25\",\n \"Priority Level\": \"High\",\n \"Item Count\": 42\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{companyName}.api.joinluminous.com/external/api/v1/{recordType}/{recordId}/custom-fields")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"Customer PO\": \"PO-98765\",\n \"Expected Delivery\": \"2024-12-25\",\n \"Priority Level\": \"High\",\n \"Item Count\": 42\n}"
response = http.request(request)
puts response.read_body{
"message": "Custom fields updated successfully"
}{
"message": "<string>"
}{
"message": "<string>"
}Authorizations
Authenticate using a bearer token. To create a token, navigate to /settings/api-tokens and click Create API Token.
Path Parameters
Type of record to update custom fields for
Available options:
sales-orders, sales-order-items, invoices, products ID of the record
Body
application/json
Response
Custom fields updated successfully
Example:
"Custom fields updated successfully"
⌘I