Bulk Update (email account)
/api/v1/email-accounts/bulk-updateRequest
/api/v1/email-accounts/bulk-updatecurl -X POST 'https://app.mailyte.com/api/v1/email-accounts/bulk-update' \
-H 'Authorization: Bearer mk_live_YOUR_API_KEY'const response = await fetch('https://app.mailyte.com/api/v1/email-accounts/bulk-update', {
method: 'POST',
headers: {
Authorization: 'Bearer mk_live_YOUR_API_KEY',
},
});
const { data } = await response.json();import requests
response = requests.post(
"https://app.mailyte.com/api/v1/email-accounts/bulk-update",
headers={"Authorization": "Bearer mk_live_YOUR_API_KEY"},
)
data = response.json()["data"]<?php
$response = Http::withToken('mk_live_YOUR_API_KEY')
->post('https://app.mailyte.com/api/v1/email-accounts/bulk-update');
$data = $response->json('data');require "net/http"
require "json"
uri = URI("https://app.mailyte.com/api/v1/email-accounts/bulk-update")
request = Net::HTTP::Post.new(uri)
request["Authorization"] = "Bearer mk_live_YOUR_API_KEY"
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(request) }Response
Success.
dataobjectobjectstringmailbox_bulk_resultupdatedintegerHow many mailboxes were changed.
failedintegerHow many were not. **A bulk update is not atomic**: a 200 with `failed` above zero means part of your batch did not happen, so check this rather than the status code.
errorsarray<object>One entry per failure, and the only place the failures are named. Empty when `failed` is 0.
mailbox_idstringWhich mailbox failed. **Never null, and never a mailbox we could not identify** — it is the id YOU sent in `account_ids`, copied into the failure row before the mailbox is looked up, so a row that failed *because the mailbox could not be loaded* still names it. That is worth stating because the obvious reading of a null here would be "it failed before we resolved an id", and that case does not exist: every id in the request has already been checked to exist before any of the batch runs, so a failure is the action failing, not the id being wrong. Pair it back to your own request to find out which item to retry.
messagestringWhy that mailbox was not updated, in the underlying exception's words. **Never null**: a row only exists here because something threw, and both of its fields are always written together. For a human reading a log — do not match on the text or parse it, it is not a stable identifier and this API publishes no error code for a partial bulk failure.
Returned inside the standard envelope.
Errors
| Status | When |
|---|---|
401 | The API key is missing, unknown, revoked or expired. All four answer identically, on purpose: distinguishing them would confirm which keys exist. |
403 | The key is valid but may not do this: it lacks the required scope, its IP allowlist does not include you, or this endpoint does not accept API keys. |
404 | No such resource in this organization. |
422 | The request was understood but the values were not acceptable. |
429 | Too many requests, or the organization has spent its sending allowance. `Retry-After` says how long to wait. |
Every status, with what causes it and what to do, is on the error reference.