curl --request POST \
--url https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"reason": "Asset moved to storage pending refurbishment."
}
'import requests
url = "https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation"
payload = { "reason": "Asset moved to storage pending refurbishment." }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({reason: 'Asset moved to storage pending refurbishment.'})
};
fetch('https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation', 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://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'reason' => 'Asset moved to storage pending refurbishment.'
]),
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://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation"
payload := strings.NewReader("{\n \"reason\": \"Asset moved to storage pending refurbishment.\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reason\": \"Asset moved to storage pending refurbishment.\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reason\": \"Asset moved to storage pending refurbishment.\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"entity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"asset_code": "<string>",
"name": "<string>",
"description": "<string>",
"serial_number": "<string>",
"status": "pending_service",
"category_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"location_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"po_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_bill_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"cost_basis": 123,
"salvage_value": 123,
"accumulated_depreciation": 123,
"tax_accumulated_depreciation": 123,
"net_book_value": 123,
"depreciation_method": "straight_line",
"useful_life_months": 123,
"macrs_class": "three_year",
"macrs_convention": "half_year",
"placed_in_service_date": "2023-12-25",
"acquisition_date": "2023-12-25",
"disposal_date": "2023-12-25",
"disposal_method": "sold",
"disposal_amount": 123,
"gain_loss_amount": 123,
"gl_asset_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"gl_accum_depr_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"gl_depr_expense_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"warranty_expiration": "2023-12-25",
"warranty_provider": "<string>",
"warranty_terms": "<string>",
"insurance_policy": "<string>",
"insurance_expiration": "2023-12-25",
"notes": "<string>",
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}
}{
"error": "not_found",
"code": "not_found",
"type": "not_found",
"hint": "The requested order does not exist or does not belong to this entity.",
"param": "expand[0]",
"required": "accounts:read",
"request_id": "req_abc123"
}{
"error": "not_found",
"code": "not_found",
"type": "not_found",
"hint": "The requested order does not exist or does not belong to this entity.",
"param": "expand[0]",
"required": "accounts:read",
"request_id": "req_abc123"
}Suspend an asset's depreciation
Halts scheduled depreciation posts for an asset, such as while it is in storage or being refurbished, moving it from active to suspended status. Only an asset currently active can be suspended; any other status returns a 422.
curl --request POST \
--url https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"reason": "Asset moved to storage pending refurbishment."
}
'import requests
url = "https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation"
payload = { "reason": "Asset moved to storage pending refurbishment." }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({reason: 'Asset moved to storage pending refurbishment.'})
};
fetch('https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation', 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://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'reason' => 'Asset moved to storage pending refurbishment.'
]),
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://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation"
payload := strings.NewReader("{\n \"reason\": \"Asset moved to storage pending refurbishment.\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reason\": \"Asset moved to storage pending refurbishment.\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.arcuserp.com/v1/fixed_assets/{id}/suspend_depreciation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reason\": \"Asset moved to storage pending refurbishment.\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"entity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"asset_code": "<string>",
"name": "<string>",
"description": "<string>",
"serial_number": "<string>",
"status": "pending_service",
"category_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"location_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"po_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_bill_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"cost_basis": 123,
"salvage_value": 123,
"accumulated_depreciation": 123,
"tax_accumulated_depreciation": 123,
"net_book_value": 123,
"depreciation_method": "straight_line",
"useful_life_months": 123,
"macrs_class": "three_year",
"macrs_convention": "half_year",
"placed_in_service_date": "2023-12-25",
"acquisition_date": "2023-12-25",
"disposal_date": "2023-12-25",
"disposal_method": "sold",
"disposal_amount": 123,
"gain_loss_amount": 123,
"gl_asset_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"gl_accum_depr_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"gl_depr_expense_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"warranty_expiration": "2023-12-25",
"warranty_provider": "<string>",
"warranty_terms": "<string>",
"insurance_policy": "<string>",
"insurance_expiration": "2023-12-25",
"notes": "<string>",
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}
}{
"error": "not_found",
"code": "not_found",
"type": "not_found",
"hint": "The requested order does not exist or does not belong to this entity.",
"param": "expand[0]",
"required": "accounts:read",
"request_id": "req_abc123"
}{
"error": "not_found",
"code": "not_found",
"type": "not_found",
"hint": "The requested order does not exist or does not belong to this entity.",
"param": "expand[0]",
"required": "accounts:read",
"request_id": "req_abc123"
}Authorizations
API key issued per entity via Settings > Developers > API Keys.
Each key carries scopes (e.g. orders:read, products:write).
Bearer token format: Authorization: Bearer ark_live_ent_Test keys use ark_test_ent_. Both are issued per entity
via Settings > Developers > API Keys.
Path Parameters
Body
"Asset moved to storage pending refurbishment."
Response
Asset suspended
A capitalized fixed asset (PP and E) tracked on the entity's books with cost basis, accumulated depreciation, depreciation schedule, and lifecycle state. Lifecycle: pending_service (created, not yet placed in service), active (depreciating), suspended (depreciation halted), fully_depreciated (accumulated depreciation equals depreciable base), disposed (sold/scrapped/donated/traded_in). Scope: assets:read / assets:write. Rule 23 SSOT: cost_basis is written only by createFixedAsset and revalueAsset; accumulated_depreciation is written only by postDepreciation, disposeAsset, impairAsset, and revalueAsset.
Show child attributes
Show child attributes
Was this page helpful?

