Push a branch by your keys
using System.Net.Http.Headers;var client = new HttpClient();var request = new HttpRequestMessage{ Method = HttpMethod.Put, RequestUri = new Uri("https://api.slflo.com/api/integration/v1/customers/CUST-0042/branches/CUST-0042-02"), Headers = { { "Idempotency-Key", "example" }, { "Authorization", "Bearer <token>" }, }, Content = new StringContent("{ \"address\": \"4 Mosadak St, Dokki\", \"blocked\": false, \"contact_name\": \"Hassan\", \"credit_limit\": null, \"latitude\": 30.0385, \"longitude\": 31.2101, \"name\": { \"ar\": \"سوق الأمل، الدقي\", \"en\": \"Al Amal Market, Dokki\" }, \"payment_terms_days\": 30, \"phone\": \"+201001234567\", \"price_list_ref\": null, \"radius_metres\": 100, \"source_version\": \"2026-10-05T10:40:00Z\" }") { Headers = { ContentType = new MediaTypeHeaderValue("application/json") } }};using (var response = await client.SendAsync(request)){ response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);}HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.slflo.com/api/integration/v1/customers/CUST-0042/branches/CUST-0042-02")) .header("Idempotency-Key", "example") .header("Authorization", "Bearer <token>") .header("Content-Type", "application/json") .method("PUT", HttpRequest.BodyPublishers.ofString("{ \"address\": \"4 Mosadak St, Dokki\", \"blocked\": false, \"contact_name\": \"Hassan\", \"credit_limit\": null, \"latitude\": 30.0385, \"longitude\": 31.2101, \"name\": { \"ar\": \"سوق الأمل، الدقي\", \"en\": \"Al Amal Market, Dokki\" }, \"payment_terms_days\": 30, \"phone\": \"+201001234567\", \"price_list_ref\": null, \"radius_metres\": 100, \"source_version\": \"2026-10-05T10:40:00Z\" }")) .build();HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());System.out.println(response.body());const url = 'https://api.slflo.com/api/integration/v1/customers/CUST-0042/branches/CUST-0042-02';const options = { method: 'PUT', headers: { 'Idempotency-Key': 'example', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: '{"address":"4 Mosadak St, Dokki","blocked":false,"contact_name":"Hassan","credit_limit":null,"latitude":30.0385,"longitude":31.2101,"name":{"ar":"سوق الأمل، الدقي","en":"Al Amal Market, Dokki"},"payment_terms_days":30,"phone":"+201001234567","price_list_ref":null,"radius_metres":100,"source_version":"2026-10-05T10:40:00Z"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://api.slflo.com/api/integration/v1/customers/CUST-0042/branches/CUST-0042-02 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Idempotency-Key: example' \ --data '{ "address": "4 Mosadak St, Dokki", "blocked": false, "contact_name": "Hassan", "credit_limit": null, "latitude": 30.0385, "longitude": 31.2101, "name": { "ar": "سوق الأمل، الدقي", "en": "Al Amal Market, Dokki" }, "payment_terms_days": 30, "phone": "+201001234567", "price_list_ref": null, "radius_metres": 100, "source_version": "2026-10-05T10:40:00Z" }'Null overrides read the account’s. Needs customers:write. Send an Idempotency-Key header; a retry with the same key and body answers the first answer again, with Idempotent-Replayed: true.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Your key for the customer the branch belongs to.
Example
CUST-0042Your key for the branch (delivery address) of that customer.
Example
CUST-0042-02Header Parameters
Section titled “Header Parameters”Your key for this write, at most 100 characters (an order id or journal id works well). Required on every write; kept 7 days. Same key and body: the first answer again. Same key, other body: 422 IDEMPOTENCY_KEY_REUSED.
Request Bodyrequired
Section titled “Request Bodyrequired”object
object
Example
{ "address": "4 Mosadak St, Dokki", "blocked": false, "contact_name": "Hassan", "credit_limit": null, "latitude": 30.0385, "longitude": 31.2101, "name": { "ar": "سوق الأمل، الدقي", "en": "Al Amal Market, Dokki" }, "payment_terms_days": 30, "phone": "+201001234567", "price_list_ref": null, "radius_metres": 100, "source_version": "2026-10-05T10:40:00Z"}Responses
Section titled “Responses”Push a branch by your keys
object
object
Example
{ "data": { "entity": "branch", "external_ref": "CUST-0042/01", "id": "C0000001:B01", "result": "created" }}default
Section titled “default”An error: the code says what, retryable whether to try again.
object
object
Stable code, e.g. SCOPE_MISSING, UNKNOWN_REFERENCE.
Field-level problems: {field, code}.
object
What happened and how to fix it.
Quote it to support; it finds the server log.
Whether the same call may succeed later.
Example
{ "error": { "code": "SCOPE_MISSING", "details": [], "message": "This client does not hold the invoices:read scope.", "request_id": "req_01J9X4Q7T2M8P3NRT6V5WZ", "retryable": false }}
