List activity for a resource
curl --request GET \
--url https://api.arcuserp.com/v1/resources/{type}/{id}/activity \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.arcuserp.com/v1/resources/{type}/{id}/activity"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.arcuserp.com/v1/resources/{type}/{id}/activity', 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/resources/{type}/{id}/activity",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.arcuserp.com/v1/resources/{type}/{id}/activity"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.arcuserp.com/v1/resources/{type}/{id}/activity")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.arcuserp.com/v1/resources/{type}/{id}/activity")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"id": "act_550e8400e29b41d4a716446655440000",
"object": "activity_event",
"entity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"actor": {
"type": "user",
"id": "<string>",
"label": "<string>",
"on_behalf_of": {
"type": "user",
"id": "<string>",
"label": "<string>"
}
},
"action": "account.created",
"resource_type": "account",
"resource_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"resource_label": "<string>",
"description": "<string>",
"severity": "info",
"outcome": "success",
"error_code": "<string>",
"request_id": "<string>",
"metadata": {},
"diff": {
"before": "<unknown>",
"after": "<unknown>"
}
}
],
"has_more": true,
"next_cursor": "<string>",
"url": "<string>"
}{
"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"
}{
"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"
}Activity
List activity for a resource
Returns the activity events scoped to one resource, such as an account, product, or order, equivalent to filtering the activity list by resource type and id. Supports the same pagination and filter parameters as the main activity list.
GET
/
resources
/
{type}
/
{id}
/
activity
List activity for a resource
curl --request GET \
--url https://api.arcuserp.com/v1/resources/{type}/{id}/activity \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.arcuserp.com/v1/resources/{type}/{id}/activity"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.arcuserp.com/v1/resources/{type}/{id}/activity', 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/resources/{type}/{id}/activity",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.arcuserp.com/v1/resources/{type}/{id}/activity"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.arcuserp.com/v1/resources/{type}/{id}/activity")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.arcuserp.com/v1/resources/{type}/{id}/activity")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"id": "act_550e8400e29b41d4a716446655440000",
"object": "activity_event",
"entity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"actor": {
"type": "user",
"id": "<string>",
"label": "<string>",
"on_behalf_of": {
"type": "user",
"id": "<string>",
"label": "<string>"
}
},
"action": "account.created",
"resource_type": "account",
"resource_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"resource_label": "<string>",
"description": "<string>",
"severity": "info",
"outcome": "success",
"error_code": "<string>",
"request_id": "<string>",
"metadata": {},
"diff": {
"before": "<unknown>",
"after": "<unknown>"
}
}
],
"has_more": true,
"next_cursor": "<string>",
"url": "<string>"
}{
"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"
}{
"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
Resource type (e.g. account, product, order, journal_entry).
Resource UUID.
Query Parameters
Required range:
1 <= x <= 100Cursor for pagination.
Available options:
user, api_key, system Was this page helpful?

