#
1. Unbind Store
Unbind (disconnect) a store from Toco using its storeClientId. This delete the store's authorizations and revokes its token, so the seller need to re-run the onboarding flow again via partner platform to obtain new credentials.
Overview
- Auth
- HMAC Partner
- Method
POST
#
Path
https://partners-api.tocobagus.net/api/v1
/partner/stores/{storeId}/unbind
#
Request
Query parameters: None.
#
Required Headers
#
Request Payload
Request payload: None for this endpoint.
#
Example Request
curl -X POST "http:///partner/stores/638765489981529612495/unbind" \
-H "Content-Type: application/json" \
-H "x-signature: bdbb8833fe43671e058b56dace75763a78a2edf8de7365afb6f534d750056e80" \
-H "x-partner-client-id: 2025112512510620439726" \
-H "x-timestamp: 1758100350458" \
const qs = new URLSearchParams({});
const url = "http:///partner/stores/638765489981529612495/unbind" + (qs.toString() ? "?" + qs.toString() : "");
const res = await fetch(url, {
method: "POST",
headers: {
"x-signature": "bdbb8833fe43671e058b56dace75763a78a2edf8de7365afb6f534d750056e80",
"x-partner-client-id": "2025112512510620439726",
"x-timestamp": "1758100350458"
}
});
const json = await res.json();
console.log(json);
qs := url.Values{}
u := "http:///partner/stores/638765489981529612495/unbind"
if q := qs.Encode(); q != "" { u = u + "?" + q }
req, _ := http.NewRequest("POST", u, nil)
req.Header.Set("x-signature", "bdbb8833fe43671e058b56dace75763a78a2edf8de7365afb6f534d750056e80")
req.Header.Set("x-partner-client-id", "2025112512510620439726")
req.Header.Set("x-timestamp", "1758100350458")
req.Header.Set("Content-Type","application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
b, _ := io.ReadAll(resp.Body)
fmt.Println(string(b))
var client = java.net.http.HttpClient.newHttpClient();
var req = java.net.http.HttpRequest.newBuilder()
.uri(java.net.URI.create("http:///partner/stores/638765489981529612495/unbind"))
.header("Content-Type","application/json")
.header("x-signature", "bdbb8833fe43671e058b56dace75763a78a2edf8de7365afb6f534d750056e80")
.header("x-partner-client-id", "2025112512510620439726")
.header("x-timestamp", "1758100350458")
.method("POST", java.net.http.HttpRequest.BodyPublishers.noBody())
.build();
var res = client.send(req, java.net.http.HttpResponse.BodyHandlers.ofString());
System.out.println(res.body());
#
Responses
#
Example Responses
{
"success": true,
"message": "Store unbound successfully",
"requestId": "0b262dbc-54a1-4aa7-bbec-e6a62e4bfa76",
"meta": {
"timestamp": "2025-11-17T22:59:08.684Z"
},
"data": {
"storeClientId": "str_bG7SUfKOqSQt",
"status": "unbound"
}
}
{
"success": false,
"error": {
"code": "AUTH_003",
"message": "Expired or invalid timestamp",
"details": {
"timestamp": "2025-11-18T09:12:32.459Z",
"hint": "Request timestamp must be within 300 seconds",
"context": {
"providedTimestamp": 1763456325508,
"currentTime": 1763457152458,
"ageSeconds": 826
}
}
},
"requestId": "0bdd25d7-9244-48d8-83a4-9717a29f099a"
}
{
"success": false,
"error": {
"code": "STORE_021",
"message": "Store inactive or deleted",
"details": {
"timestamp": "2025-11-17T23:00:24.326Z",
"hint": "Store is already unbound",
"context": {
"storeClientId": "str_bG7SUfKOqSQt"
}
}
},
"requestId": "67ff701f-91ac-4d2c-af1b-ba2021c79478"
}
{
"success": false,
"error": {
"code": "STORE_020",
"message": "Store ID not found",
"details": {
"timestamp": "2025-11-18T08:58:53.660Z",
"hint": "Store not found or does not belong to this partner",
"context": {
"storeClientId": "str_bG7SUfKjqSQt"
}
}
},
"requestId": "12a3b3fe-46db-481f-bbe2-bc656d2507c5"
}
#
Dictionary
None for this endpoint.
#
Notes
None for this endpoint.