const res = await fetch('https://app.trdrs.co/api/partner/accounts/reset', {
method: 'POST',
headers: {
'content-type': 'application/json',
Authorization: `Bearer ${process.env.TRDRS_API_KEY}`,
},
body: JSON.stringify({
"accountNumber": "EVAL-7C21A9",
"referenceId": "reset-84117-1",
"comment": "trader repurchased after a hard-breach"
}),
})
const data = await res.json()curl -X POST 'https://app.trdrs.co/api/partner/accounts/reset' \
-H "Authorization: Bearer $TRDRS_API_KEY" \
-H 'content-type: application/json' \
-d '{"accountNumber":"EVAL-7C21A9","referenceId":"reset-84117-1","comment":"trader repurchased after a hard-breach"}'import requests
url = "https://app.trdrs.co/api/partner/accounts/reset"
payload = {
"accountNumber": "EVAL-7C21A9",
"referenceId": "reset-84117-1",
"comment": "trader repurchased after a hard-breach"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.trdrs.co/api/partner/accounts/reset",
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([
'accountNumber' => 'EVAL-7C21A9',
'referenceId' => 'reset-84117-1',
'comment' => 'trader repurchased after a hard-breach'
]),
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://app.trdrs.co/api/partner/accounts/reset"
payload := strings.NewReader("{\n \"accountNumber\": \"EVAL-7C21A9\",\n \"referenceId\": \"reset-84117-1\",\n \"comment\": \"trader repurchased after a hard-breach\"\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://app.trdrs.co/api/partner/accounts/reset")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accountNumber\": \"EVAL-7C21A9\",\n \"referenceId\": \"reset-84117-1\",\n \"comment\": \"trader repurchased after a hard-breach\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.trdrs.co/api/partner/accounts/reset")
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 \"accountNumber\": \"EVAL-7C21A9\",\n \"referenceId\": \"reset-84117-1\",\n \"comment\": \"trader repurchased after a hard-breach\"\n}"
response = http.request(request)
puts response.read_body{
"accountNumber": "EVAL-7C21A9",
"reset": true
}{
"error": "invalid_instrument"
}{
"error": "invalid_instrument"
}{
"error": "invalid_instrument"
}{
"error": "invalid_instrument"
}Reset an issued account
Puts one firm-issued account back to its starting state: balance to startingBalance, open positions and working orders cleared, the reset stamped on the account and recorded on the balance ledger. The trader’s dashboard repaints live.
The ledger is written first, keyed on your referenceId: a duplicate reference answers 409 and moves nothing, so a retried pipeline can never double-reset an account a trader has started trading again. 404 covers both “no such account” and “not your account” — the two are indistinguishable on purpose, so this surface never confirms another firm’s account numbers.
const res = await fetch('https://app.trdrs.co/api/partner/accounts/reset', {
method: 'POST',
headers: {
'content-type': 'application/json',
Authorization: `Bearer ${process.env.TRDRS_API_KEY}`,
},
body: JSON.stringify({
"accountNumber": "EVAL-7C21A9",
"referenceId": "reset-84117-1",
"comment": "trader repurchased after a hard-breach"
}),
})
const data = await res.json()curl -X POST 'https://app.trdrs.co/api/partner/accounts/reset' \
-H "Authorization: Bearer $TRDRS_API_KEY" \
-H 'content-type: application/json' \
-d '{"accountNumber":"EVAL-7C21A9","referenceId":"reset-84117-1","comment":"trader repurchased after a hard-breach"}'import requests
url = "https://app.trdrs.co/api/partner/accounts/reset"
payload = {
"accountNumber": "EVAL-7C21A9",
"referenceId": "reset-84117-1",
"comment": "trader repurchased after a hard-breach"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.trdrs.co/api/partner/accounts/reset",
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([
'accountNumber' => 'EVAL-7C21A9',
'referenceId' => 'reset-84117-1',
'comment' => 'trader repurchased after a hard-breach'
]),
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://app.trdrs.co/api/partner/accounts/reset"
payload := strings.NewReader("{\n \"accountNumber\": \"EVAL-7C21A9\",\n \"referenceId\": \"reset-84117-1\",\n \"comment\": \"trader repurchased after a hard-breach\"\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://app.trdrs.co/api/partner/accounts/reset")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accountNumber\": \"EVAL-7C21A9\",\n \"referenceId\": \"reset-84117-1\",\n \"comment\": \"trader repurchased after a hard-breach\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.trdrs.co/api/partner/accounts/reset")
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 \"accountNumber\": \"EVAL-7C21A9\",\n \"referenceId\": \"reset-84117-1\",\n \"comment\": \"trader repurchased after a hard-breach\"\n}"
response = http.request(request)
puts response.read_body{
"accountNumber": "EVAL-7C21A9",
"reset": true
}{
"error": "invalid_instrument"
}{
"error": "invalid_instrument"
}{
"error": "invalid_instrument"
}{
"error": "invalid_instrument"
}Authorizations
A partner-scoped API key (trdrs_sk_…), issued to a trdrs Connect partner firm and accepted only under /api/partner/. Same format as the firm (tenant) key, different scope: a firm API key is refused here, and this key is refused everywhere else.
Body
PartnerAccountResetRequest. Names the account and carries your idempotency handle — a duplicate referenceId answers 409 and moves nothing.