hosting

POST /v1/sites/{siteId}/transfer/preview

Check whether a site could be transferred to another organization.

Όλα τα τελικά σημεία hosting

Πισtoποίηση

Στείλτε ένα κλειδί API ως διακριτικό φορέα (bearer token). Το κλειδί πρέπει να διαθέτει το δικαίωμα sites.view· ένα κλειδί που δεν το διαθέτει απορρίπτεται με 403, όχι 404.

Αυτό το τελικό σημείο δεν δέχεται αναγνωριστικό οργανισμού. Το κλειδί σας προσδιορίζει ήδη τον οργανισμό στον οποίο ανήκει, και η απάντηση περιορίζεται σε αυτόν.

Δοκιμάστε το

Ατικatastήstε ό,τι βρίskεtai μέσα σe γώniaδeς μe τis δikές sas timές, kai to placeholder klεidioύ μe éna klεidi apó ton pinaka ελέgchou sas.

curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/transfer/preview \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "target_org_id": <Uuid> }'

Συνδεθήκατε; Η κονσόλα API στον πίνακα ελέγχου σας συμπληρώνει το πραγματικό αναγνωριστικό του οργανισμού σας και το δικό σας κλειδί, και εκτελεί το αίτημα στο ζωντανό API, ώστε να μπορείτε να δείτε την πραγματική απόκριση. Ανοίξτε αυτό το τελικό σημείο στην κονσόλα API

Λεπτομέρειες

Answers *"would this go through, and what would it take with it"* without writing anything. The sender's form calls this before it offers, so arrears and structural problems read as a checklist rather than as a failure after the fact. ⛔ **`POST` for a read**, deliberately: the proposal has a body (a target organization and a domain choice), and putting a UUID in a query string would leave the receiving account's id in access logs and `Referer` headers. ⛔ **The receiving account's arrears are NOT itemised to the sender.** When the target organization is what blocks the transfer, `details` carries a single `target_account` entry saying only that the receiving account has an outstanding balance its owner must settle. Itemising it would make this endpoint a way to read any organization's financial position by offering it a site. The receiver sees every number on their own accept screen, where it is their own data. Requires `sites.view` **and** `sites.transfer`. `404` for a site that is not theirs.

Παράμετροι

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
siteId (path)UuidΝαιSite ID (UUIDv7).

Σώμα αίτησης

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
target_org_idUuidΝαιThe **receiving organization's id**, which its owner gives to the sender. ⛔ An organization id rather than an email address, and that is a privacy decision. Resolving a recipien…
include_domainbooleanΌχιWhether the domain registration, its DNS zone and records, and its mail travel with the site. `false` moves the site alone and the receiver points a domain of their own at it.

Απάντηση

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
allowedbooleanΝαιWhether the transfer would be permitted right now.
messagestringΝαιThe refusal in words, composed by the engine for API and staff-console readers. Empty when `allowed`. The dashboard renders its own localised sentences from `details[].field` an…
detailsErrorDetail[]ΝαιOne entry per reason, machine-readable. `field` is the blocker code (`unpaid_invoices`, `dunning_active`, `page_view_overage`, `bandwidth_overage`, `wholesale_statement`, `faile…
include_domainbooleanΝαι
domain_namesstring[]ΝαιThe domains that would change hands. Read from the registrations we actually hold — a site on a domain registered elsewhere lists none, rather than naming a registration we cann…
term_ends_atstringΌχιWhen the inherited paid term runs out. The receiver pays nothing until then.
renewal_amount_minorintegerΌχιWhat it renews at, in minor units of `renewal_currency`.
renewal_currencystringΌχιThe **subscription's** currency, which does not change on transfer. A locked price is already currency-locked, and converting it would silently re-price a paid term at a rate no…
moving_tablesintegerΝαιHow many of the platform's site-attached record types would move.
staying_tablesintegerΝαιHow many would stay with the sender — traffic and usage evidence, tickets, abuse history, paid add-ons.

Σφάλματα που μπορεί να επιστρέψει αυτό το τελικό σημείο

401 · 403 · 404 · 429