hosting
POST /v1/migrations/probe
Sign in to the old host and show what is there, with no site yet.
Uwierzytelnianie
Wyślij klucz API jako token bearer. Klucz musi posiadać uprawnienie hosting.import.manage; klucz bez niego jest odrzucany z kodem 403, a nie 404.
Ten punkt końcowy nie wymaga identyfikatora organizacji. Twój klucz już identyfikuje organizację, do której należy, a odpowiedź jest do niej ograniczona.
Wypróbuj
Zastąp wszystko w nawiasach ostrych własnymi wartościami, a zastępczy znacznik klucza kluczem ze swojego pulpitu nawigacyjnego.
curl -X POST https://api.zinndigital.com/v1/migrations/probe \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "source": <MigrationSource>, "host": <string>, "username": <string> }'Zalogowany? Konsola API w Twoim panelu uzupełnia rzeczywiste identyfikator organizacji oraz Twój własny klucz i wykonuje żądanie względem aktywnego API, dzięki czemu możesz zobaczyć rzeczywistą odpowiedź. Otwórz ten punkt końcowy w konsoli API
Szczegóły
The org-scoped twin of POST /v1/sites/{siteId}/migrations/probe, for the site-less /migrations/new form: authenticates against the source and enumerates it without creating a site or a job, and returns the same inventory. It exists because mail cannot move without a password per mailbox, no panel can read one out, and the customer can only be asked for the mailboxes the source actually holds once somebody has looked. mailboxes_without_passwords lists them; when a source cannot list mailboxes at all (Plesk to a subscription login) unavailable carries site_migration:mailboxes: mailbox_passwords_required, meaning name each mailbox with its password, not mail cannot move. ⛔ POST although it creates nothing: the body carries a live credential for somebody else's server. Name the organisation with X-Zinn-Org when you belong to more than one. Requires hosting.import.manage.
Treść żądania
| Nazwa | Typ | Wymagane | Co to jest |
|---|---|---|---|
source | MigrationSource | Tak | The kind of hosting the site is being pulled from. ⛔ plesk is offered so the refusal can be specific and actionable, not because it is supported: pleskbackup is reachable… |
host | string | Tak | The server's public hostname, e.g. server123.yourhost.com. Must resolve to a public address — a private or link-local target is refused with source_host_not_public at the door… |
username | string | Tak | The login for the source panel or account. |
port | integer | Nie | 0 means the source driver's default for that panel. |
password | string | Nie | — |
private_key | string | Nie | An SSH private key in PEM form, for an ssh source. |
api_token | string | Nie | — |
include_mail | boolean | Nie | ⚖️ Defaults to true, and a source that cannot deliver mailboxes is refused rather than silently migrated without them — a migration that moves a website and loses the mail is… |
mailbox_passwords | object | Nie | address -> password, for every mailbox being moved. Required up front rather than discovered mid-sync: most panels will not hand over a mailbox without its own password, and… |
Odpowiedź
| Nazwa | Typ | Wymagane | Co to jest |
|---|---|---|---|
domains | string[] | Tak | — |
files | integer | Tak | How many files were found. A count, not the list — a 5,000-file estate is not a form field, and the per-item rows are written by the job. |
databases | MigrationSourceDatabase[] | Tak | — |
mailboxes | MigrationSourceMailbox[] | Tak | — |
total_bytes | integer | Tak | — |
truncated | boolean | Tak | True when the source stopped short of a complete listing. Reported, never swallowed. |
unavailable | object | Tak | ⭐ The most important field here: capability -> machine code, naming what we could not look at. An empty object means "we looked and there is nothing else", which is a… |
mailboxes_without_passwords | string[] | Tak | The addresses no usable password was supplied for. The form points at exactly these rows; a create with any of them present is refused with mailbox_passwords_required. |
Błędy, które ten punkt końcowy może zwrócić
401 · 403 · 422 · 429