Обновления продукта
История изменений
Все заметные для пользователя изменения в API, кабинете и покрытии.
- Последний
- 4.8.2
- Дата
- 11 авг. 2026 г.
- Несовместимые изменения
- Несовместимые изменения объявляются здесь минимум за 14 дней до вступления в силу, и у каждого устаревания указана дата, с которой прежнее поведение перестаёт работать.
2026
6 релизов
4.8.2
Последний- ИсправленоPrice alerts were evaluated against the pool price instead of the retail price, so a threshold set just under the listed price never fired.
- ИсправленоThe Singapore entry point returned X-VSN-Region: eu-central on catalogue responses served from cache.
4.8.1
- ИсправленоRentals renewed inside the last hour of their term were charged the new term twice. 41 accounts were credited back automatically the same day.
- ИсправленоGET /v1/activations dropped the status filter once the cursor was followed past page 20, so later pages mixed completed and cancelled orders.
- ИзмененоThe compatibility endpoint rejects action=getNumber with an unknown service code in about 12 ms instead of waiting on a pool lookup that could never succeed.
4.8.0
Bulk activations
Buy up to 50 numbers for the same service and country in one call, with a result per item instead of an all-or-nothing failure.
- ДобавленоPOST /v1/activations/bulk accepts up to 50 items and returns one result object per requested number, each with its own status and error code.
- ДобавленоBulk purchase in the dashboard, with a live progress panel and per-row cancel while the batch is still filling.
- ИзмененоIdempotency keys apply to the whole bulk request: a replay returns the original result set rather than buying a second batch.
- ИзмененоBulk requests draw from at most three operators per batch, so a single bad range cannot take out an entire order.
- ИсправленоThe pool scorer counted a failed batch once per request rather than once per number, which under-penalised operators that failed in bulk.
4.7.1
- УдаленоPOST /v1/activations no longer accepts a pinned operator field, as announced on 2025-09-23. Requests that still send it are accepted and the field is ignored.
- ИсправленоTwo-factor enrolment rejected authenticator apps that pad the shared secret to 32 characters with base32 padding.
- ИсправленоCountry pages listed services whose only operator in that country had been retired six weeks earlier, so the row always showed zero stock.
4.7.0
Per-country retention
- ДобавленоMessage retention is configurable per country between 1 and 30 days on contract accounts, for teams with data-residency commitments of their own.
- ДобавленоretentionDays on the activation object, so a script can see what applies to a number before it buys it.
- ИзмененоThe nightly retention job writes an audit record per deleted batch — count, country and cut-off — available to business accounts on request.
- ИсправленоDeleting an activation's messages from the dashboard left the extracted code in the CSV export until the next nightly run.
4.6.2
- ИсправленоGET /v1/prices with more than 20 service and country pairs hit the gateway timeout instead of returning 400 with a clear limit error.
- ИсправленоThe Frankfurt entry point served stock counts up to 90 seconds stale after a pool refresh, while Singapore served them immediately.
2025
12 релизов
4.6.1
- ИсправленоWebhook endpoints disabled after 72 hours of consecutive failures were silently re-enabled by any edit to their event list, including removing an event.
- Исправленоwebhook.test deliveries counted towards the failure streak that disables an endpoint, so testing a broken endpoint could disable it.
4.6.0
Webhook tooling
- ДобавленоSend a synthetic event of any type to a registered endpoint from the dashboard, signed exactly like a real delivery.
- Добавленоwebhook.test event type, excluded from delivery statistics and from the retry schedule.
- ДобавленоThe delivery log keeps the request body, the response status and the first 2 KB of the response body for seven days, with a manual replay per delivery.
- ИзмененоAn endpoint that fails continuously for 72 hours is disabled, after warning emails at 6 and 24 hours.
4.5.1
- ИсправленоPrice alerts were evaluated hourly rather than on every pool refresh, so dips that lasted under an hour went unreported.
- ИсправленоThe uptime strip on the status page rendered left to right under Arabic while the rest of the page mirrored, putting today on the wrong end.
4.5.0
Price alerts
- ДобавленоPrice alerts for a service and country pair, delivered by email or webhook when the retail price crosses a threshold you set.
- ДобавленоGET /v1/prices accepts up to 50 service and country pairs in one request instead of one pair per call.
- Добавлено23 countries, mostly Central American and Pacific territories. Coverage crosses 190 countries and territories.
- УстарелоPinning operator on POST /v1/activations. Routing already picks the healthiest operator with stock; the field is ignored from 2026-03-31.
4.4.0
Twelve-month rentals
- ДобавленоRental terms of 6 and 12 months, at a price fixed for the whole term rather than repriced at each renewal.
- Добавленоrental.expiring webhook event, fired 24 hours before a rental ends.
- ИзмененоAuto-renew checks that the upstream lease can actually be extended before it debits the balance, instead of debiting first and refunding on failure.
- ИсправленоRentals crossing a daylight-saving boundary expired 60 minutes early in Europe/London and Europe/Lisbon.
4.3.1
- ИсправленоIdempotency keys were stored per region, so a retry that landed in Singapore after a Frankfurt timeout bought a second number. Duplicate purchases in the affected window were refunded.
- ИсправленоX-VSN-Region was missing from 402 and 429 responses.
4.3.0
Multi-region API
A second API entry point in Singapore cuts median round-trip latency from South-East Asia from 310 ms to 74 ms.
- ДобавленоRegional entry points in Frankfurt and Singapore, selected by anycast. Both read the same catalogue and the same balance.
- ДобавленоX-VSN-Region on every response, naming the entry point that served it.
- ИзмененоA long-poll connection is pinned to the region that accepted it for the life of the wait, so a code is never delivered to a region the client has left.
- ИзмененоPurchases are still serialised through the primary in Frankfurt; only reads and long-polls are served locally. Balance can never go negative because of a regional split.
4.2.1
- ИсправленоLogin alerts fired after every browser update, because the full user agent string was part of the device fingerprint.
- ИсправленоSessions expired 30 days after creation rather than after 30 days of inactivity, which is what the documentation and the setting both said.
4.2.0
Account security
- ДобавленоTwo-factor confirmation is required to create an API key or widen its scopes, on accounts that have 2FA enabled.
- ДобавленоEmail alert on sign-in from a new device or a new country, with the IP and the approximate location.
- ИзмененоSessions expire after 30 days of inactivity instead of 30 days from creation.
- ИзмененоRecovery codes are invalidated as a set when two-factor authentication is re-enrolled, so an old printout stops working.
4.1.0
- Добавлено19 countries across East and West Africa — Ethiopia, Tanzania, Uganda, Zambia, Senegal, Ivory Coast and others.
- ДобавленоSupport tickets opened from the dashboard carry the last 20 activations as context, so the first reply is not a request for identifiers.
- ИзмененоThe operator field on a completed activation names the range holder rather than the reseller we bought through, which is what you need to correlate failures.
- ИсправленоService pages returned an empty table rather than an empty state when a country had no stock at all, which read like a loading failure.
4.0.1
- ИсправленоThe MCP server advertised rentals:write tools to keys that did not hold the scope; calls failed with 403 rather than being hidden.
- ИсправленоrequestId was missing from responses produced by the rate limiter, which are exactly the ones support gets asked about.
- ИсправленоThe OpenAPI document declared wait as an integer while the API also accepted a numeric string.
4.0.0
Agent-ready API
A hosted MCP server, an OpenAPI 3.1 document and an llms.txt index, so an agent can discover and drive the whole activation lifecycle with a scoped key.
- ДобавленоA hosted MCP server exposing buy, poll, cancel, complete and balance as tools, bound to the scopes of the key that connects.
- Добавленоllms.txt at the site root, indexing the public surface — pricing, endpoints, limits and policies — for agents and crawlers.
- Изменено/openapi.json is now OpenAPI 3.1, generated from the same schema the API validates requests against, so the document cannot drift.
- ИзмененоEvery response carries requestId. Quoting it in a ticket is enough for support to find the exact request.
- ИзмененоBearer tokens are the documented default. X-Api-Key keeps working, is not deprecated, and will not be removed.
2024
12 релизов
3.13.1
- ИсправленоTwo services shared a slug after a rename, so one of the two service pages returned 404 for eleven days before anyone told us.
- ИсправленоHreflang alternates on service pages pointed at the English URL for every language.
3.13.0
- Добавлено46 services, mostly regional marketplaces and wallets in South-East Asia and Latin America, including Shopee, Lazada, Mercado Libre and PicPay.
- УдаленоGET /v1/history, deprecated on 2024-06-11. Use GET /v1/activations, which is a superset.
- ИзмененоThe compatibility endpoint returns NO_NUMBERS instead of NO_BALANCE when the pool is empty but the balance is sufficient, which is what the original protocol means.
3.12.0
- ДобавленоLocalised metadata, canonical URLs and hreflang alternates for all fifteen interface languages.
- ДобавленоA sitemap covering every service and country landing page in every language.
- ИзмененоPublic pages are statically rendered and revalidated every five minutes. Time to first row on the pricing table fell from 1.9 s to 0.4 s.
- ИсправленоThe 15-minute post-release hold was applied per provider rather than per number, which shrank the effective pool in countries with fewer than 200 numbers.
3.11.0
- ДобавленоA fifth upstream provider, adding US and Canadian coverage for 60 services that previously had none in North America.
- ДобавленоX-RateLimit-Reset as a Unix timestamp, alongside the existing limit and remaining headers.
- ИзмененоA released number is held out of the pool for 15 minutes, so a re-issue after a rejected verification does not land on the same range.
3.10.1
- ИсправленоActivation windows shorter than 10 minutes were still refunded on the 20-minute schedule, delaying the credit by up to ten minutes.
- ИсправленоAnomaly alerts compared the current success rate against an all-time average instead of the trailing seven days, so seasonal services alerted constantly.
3.10.0
- ДобавленоAnomaly alerts: an email when a service and country pair you have used in the last 30 days drops more than 20 points in success rate.
- ДобавленоThe activation window is configurable per purchase between 5 and 30 minutes. The default stays 20.
- ИзмененоCursor pagination on GET /v1/activations breaks ties on the identifier rather than the timestamp alone, so two activations created in the same millisecond are both returned.
3.9.0
- ДобавленоGET /v1/activations with cursor pagination, status filters and a date range.
- ДобавленоCSV export of activation history from the dashboard, with no row cap.
- ДобавленоThe export includes the operator and the full SMS body where retention still allows it, so an audit does not need a second API call.
- УстарелоGET /v1/history, superseded by GET /v1/activations. It stops answering on 2024-11-15.
3.8.1
- ИсправленоConsolidated monthly invoices double-counted refunds issued in the last hour of the month.
- ИсправленоPurchase-order references longer than 40 characters were truncated on the PDF without any indication.
3.8.0
Business accounts
- ДобавленоContract rates, dedicated operator pools, a data processing agreement and net-15 terms for accounts above roughly 5,000 SMS a month.
- ДобавленоMonthly consolidated invoices carrying purchase-order references.
- ДобавленоA named escalation contact and a private channel for P1 issues.
- ИзмененоThe published SLA for contract accounts is 99.9 % monthly API availability with a 15-minute response on P1, measured excluding announced maintenance.
3.7.0
- ДобавленоTON, BNB and SOL as top-up currencies through OxaPay.
- ДобавленоUnder-payment handling: a partial deposit is credited for the amount actually received as soon as it is attributed, instead of being held for manual review.
- ИзмененоInvoice quotes are locked for 30 minutes instead of 15, after measuring how long Bitcoin confirmations really take at median fee rates.
- ИсправленоA deposit sent to an expired invoice address needed a support ticket to be credited. Attributable deposits are now credited automatically within an hour.
3.6.1
- ИсправленоPayout requests between €50.00 and €50.99 were rejected by an off-by-one comparison in cents.
- ИсправленоThe referral dashboard showed lifetime earnings in the tier progress bar instead of the trailing-12-month figure the tier is based on.
3.6.0
Referral tiers
- ДобавленоVolume tiers on the referral program: 7 % above €500 of referred spend, 10 % above €5,000.
- ДобавленоReferral payouts in crypto once earnings exceed €50, to the address you nominate.
- ИзмененоCommission is calculated on what a referral spends, not on what they top up, so a large deposit no longer pays out before it is used.
- ИзмененоEarnings land on the balance as they are earned instead of being settled overnight.
2023
12 релизов
3.5.0
- Добавлено34 services in delivery and ride-hailing, including Bolt, Glovo, inDrive, Rappi and Gojek.
- ДобавленоPer-service landing pages with live price, stock and success rate for every country that has numbers for it.
- ИзмененоThe 24-hour success rate is computed over a rolling window rather than the previous calendar day, so a bad morning shows up before midnight.
3.4.1
- ИсправленоAll-senders rentals dropped messages from alphanumeric sender IDs shorter than three characters.
- ИсправленоRental prices were quoted per day by the API and per term in the dashboard, which disagreed by a few cents on three-month rentals.
3.4.0
- ДобавленоRentals in all-senders mode: receive from any sender, not only from the service you picked.
- Добавлено12 more countries eligible for rental, including Japan, South Korea and Australia.
- ИзмененоRental prices are quoted per term rather than per day, which is how the upstream actually charges and why short rentals looked oddly expensive.
- ИсправленоDeleting the messages of an activation left the extracted code visible in the activation list.
3.3.0
- ДобавленоUkrainian interface translation, covering the catalogue and the legal pages.
- ДобавленоPer-activation message deletion from the dashboard, ahead of the 30-day retention cut-off.
- ИзмененоRetention is enforced by a nightly deletion job with an audit record instead of being filtered on read, so expired bodies are actually gone.
3.2.1
- ИсправленоReplaying a webhook delivery re-sent the original timestamp, so endpoints enforcing a five-minute signature tolerance rejected every replay.
- ИсправленоThe uptime strip on the status page rendered 91 bars for visitors in time zones ahead of UTC.
3.2.0
- Добавлено21 countries across the Middle East and the Gulf, including Iraq, Jordan, Lebanon, Oman and Qatar.
- ДобавленоA webhook delivery log with the request, the response status and a manual replay.
- ИзмененоWebhook secrets can be rotated with a 24-hour overlap during which both the old and the new signature are accepted.
3.1.0
Status page and changelog
- ДобавленоA public status page with 90-day uptime per component and the full incident history.
- ДобавленоThis changelog, with an RSS feed at /changelog.xml.
- ИзмененоMaintenance windows are announced on the status page at least 48 hours in advance.
3.0.2
- ИсправленоX-VSN-Pool was omitted on responses served from the idempotency cache.
- ИсправленоPool scores were not reset when an operator returned from a maintenance window, so traffic kept avoiding it for hours after it was healthy again.
3.0.1
- ИсправленоThe new scorer treated an operator with fewer than 20 samples as perfectly healthy and sent early traffic to cold ranges. Operators now start at the pool median.
- ИсправленоPurchases returned 503 instead of 409 when every scored operator for a combination was exhausted.
3.0.0
Pool rewrite
Operator selection moved from a per-request provider lookup to a continuously scored pool. Median time to issue a number fell from 2.6 s to 0.9 s.
- ИзмененоScores are recomputed every 30 seconds for each service, country and operator combination, instead of being looked up at purchase time.
- ДобавленоX-VSN-Pool names the pool that served a purchase, so a failure can be traced back to a range.
- ДобавленоPurchases skip any operator whose trailing 24-hour success rate is below 60 %, even when it is the cheapest.
- УдаленоGET /v1/prices?flat=1, deprecated on 2022-08-16. The grouped response replaces it.
2.14.1
- ИсправленоThe / search shortcut hijacked typing inside the promo-code field on the top-up page.
- ИсправленоA key sitting exactly at its daily spend limit returned 500 instead of 402 with a clear error code.
2.14.0
- Добавлено30 services in finance and crypto, including Kraken, Bybit, Bitget, Nubank and Wise.
- ДобавленоSearch across services and countries from any page with the / shortcut.
- ИзмененоThe pricing page loads the grouped catalogue in one request instead of two, which halved time to first row on slow connections.
2022
12 релизов
2.13.0
- ДобавленоPer-key spend limits, daily and monthly, enforced at purchase time rather than reconciled afterwards.
- ДобавленоGET /v1/me, returning the calling key's scopes, limits and remaining budget.
- ИзмененоScopes split into numbers:read, numbers:write, balance:read and rentals:write. Existing keys were mapped to the equivalent set with no change in behaviour.
2.12.1
- ИсправленоThe operator name was empty on activations served through the legacy compatibility endpoint.
- ИсправленоArabic-Indic digits appeared in activation countdowns, where tabular Latin digits are used everywhere else.
2.12.0
- ДобавленоA fourth upstream provider. Pool depth in Nigeria, Kenya and Egypt roughly doubled.
- ДобавленоThe operator name is recorded on every completed activation, so a run of failures can be correlated with a specific range.
- ИзмененоFailover retries a different operator when the first attempt times out, instead of retrying the same one and burning the window.
2.11.1
- ИсправленоCall transcripts longer than 480 characters were truncated with no ellipsis and no truncated flag on the object.
- ИсправленоVoice-to-text delivered the transcript twice when the caller hung up during the beep.
2.11.0
- ДобавленоVoice-to-text on rentals in 11 countries: an inbound call is transcribed and delivered as a message.
- Добавленоcall.received webhook event, carrying the transcript and the caller ID where the operator provides one.
- ДобавленоRental terms of 3 months.
- УстарелоGET /v1/prices?flat=1. The grouped response replaces it and carries the same data; the flat shape stops working on 2023-03-15.
2.10.1
- ИсправленоThe dashboard sidebar did not mirror under RTL, so the activation timeline ran off the right edge in Arabic.
- ИсправленоThe Indonesian translation applied the activation status labels to rentals, where the states are different and two of them do not exist.
2.10.0
- ДобавленоHindi, Indonesian and Arabic interface translations, with full right-to-left layout support.
- Добавлено24 countries, mostly Caribbean and Pacific territories.
- ИзмененоRate limits burst to 20 requests per second within the per-minute budget, instead of rejecting anything above two per second.
- ИсправленоThe stable code field was missing from the 402 returned when the balance is too low.
2.9.0
- ДобавленоAn OpenAPI 3.0 document at /openapi.json, generated from the schema the API validates against.
- ДобавленоOfficial Python and Node clients, dependency-free and thin enough to read in one sitting.
- ИзмененоError responses carry a stable machine-readable code. The human-readable message is explicitly not stable and should never be parsed.
2.8.1
- ИсправленоActivations for services with an apostrophe in the name failed the legacy getNumber action with BAD_SERVICE.
- ИсправленоThe theme cookie was not read during the first server render, so accounts on the light theme saw a dark flash on every navigation.
2.8.0
- Добавлено19 countries in the Balkans and Eastern Europe — Serbia, Bosnia and Herzegovina, Albania, Moldova, Montenegro and North Macedonia among them.
- ИзмененоSupport moved to 24/7 cover in English, French, Russian and Spanish. Median first response is now under 12 minutes.
- ИзмененоThe pricing table groups by service by default, with the country view one click away.
2.7.0
- ДобавленоDark and light themes with a per-account preference, stored in a cookie so the first paint is already correct.
- ДобавленоGerman, Italian and French interface translations.
- ИзмененоThe activation card shows the full SMS body next to the extracted code, not only the code.
2.6.1
- ИсправленоThe balance-low alert fired on every purchase once the threshold was crossed, instead of once per crossing.
- Исправленоbalance.low webhooks were sent before the debit was committed, so the payload showed the pre-purchase balance.
2021
12 релизов
2.6.0
- ДобавленоBalance-low email alert with a per-account threshold.
- Добавленоbalance.low webhook event.
- Добавлено40 services, including Revolut, Binance, OKX and Coinbase.
2.5.0
- ДобавленоA third upstream provider, adding depth in India, Indonesia and Bangladesh.
- ДобавленоA seven-day stock history on each pricing row, so you can see whether a country is drying up before you plan around it.
- ИзмененоRouting weighs price against the trailing success rate instead of picking on price alone. Slightly more expensive numbers that actually deliver now win.
- ИсправленоA pool refresh could briefly report zero stock for every Indian service.
2.4.1
- ИсправленоIPv6 allowlist entries carrying a zone identifier were rejected as malformed.
- ИсправленоThe seven-day stock history bucketed by the account time zone but labelled the axis in UTC.
2.4.0
- ДобавленоIP allowlists on API keys, accepting IPv4, IPv6 and CIDR ranges, one per line.
- ДобавленоTurkish, Polish and Vietnamese interface translations.
- ИзмененоAPI keys are shown once at creation and only a prefix is stored afterwards. Existing keys were rotated and the old values are no longer retrievable by anyone, including us.
2.3.0
- ДобавленоIdempotency keys on POST /v1/activations. A replay within 24 hours returns the original response instead of buying a second number.
- ДобавленоLong-polling on GET /v1/activations/{id} with wait= up to 180 seconds, so tight polling loops are no longer necessary.
- ИзмененоWebhook retries use exponential back-off across 24 hours over eight attempts, instead of five attempts inside an hour.
2.2.1
- ИсправленоWebhook signatures were computed over the parsed body, so endpoints that re-serialised the JSON before verifying saw a mismatch.
- ИсправленоRentals bought in the hour before a daylight-saving change expired 60 minutes early.
- ИсправленоAuto-renew debited the balance even when the upstream lease could not be extended. The affected charges were credited back the same week.
2.2.0
Number rental
Keep the same number from four hours to one month and receive unlimited SMS from the service you choose.
- ДобавленоRentals with terms of 4 hours, 12 hours, 1 day, 3 days, 1 week and 1 month.
- ДобавленоPOST /v1/rentals and GET /v1/rentals/{id}, with optional auto-renew six hours before expiry.
- ДобавленоRental available in 15 countries in the first wave, including the United Kingdom, France, Germany, Spain, Poland, Canada and the United States.
2.1.0
- ДобавленоWebhooks: sms.received, activation.completed and activation.expired, signed with HMAC-SHA256 over the raw body.
- ДобавленоGET /v1/countries and GET /v1/services catalogue endpoints.
- ИзмененоDefault rate limit raised from 60 to 120 requests per minute per key.
2.0.1
- ИсправленоLive activation cards stopped updating after the tab had been in the background for more than five minutes.
- ИсправленоThe language-prefix redirect dropped the query string, which broke referral links carrying ?ref=.
2.0.0
New dashboard
The dashboard was rebuilt around live activation cards, so a code appears the moment it lands rather than on the next refresh.
- ДобавленоLive activation cards with the countdown, the full SMS body and one-click copy for both the number and the code.
- ИзмененоThe interface language is part of the URL (/en/, /ru/), so every page is linkable and shareable per language.
- ИзмененоActivation objects gained smsText, receivedAt and operator. Existing fields are unchanged.
- ИзмененоPrices and stock refresh every 60 seconds in the browser without a page reload.
1.10.0
- Добавлено26 countries across Central Asia and the Caucasus, including Kazakhstan, Uzbekistan, Georgia, Armenia and Azerbaijan.
- ДобавленоCSV export of activation history, capped at 5,000 rows per file.
- ИсправленоKazakh numbers were displayed with the +7 country code split in the wrong place.
1.9.0
- ДобавленоA second upstream provider in the pool, with per-service health scoring and automatic failover.
- ДобавленоCountry-level success-rate badges on the pricing page, computed over the trailing 24 hours.
- ИзмененоThe first top-up minimum moves from €10 to €30, announced by email on 2020-12-08. Existing balances are unaffected and repeat top-ups stay at €10.
- ИсправленоSuccess-rate badges rounded 84.6 % up to 85 % and crossed the healthy threshold visually while the real rate had not.
2020
12 релизов
1.8.1
- ИсправленоReferral attribution was lost when a visitor switched language before signing up.
- ИсправленоThe activation countdown drifted by up to 40 seconds in tabs left in the background.
- ИсправленоRecovery codes could be redeemed twice if two requests arrived within the same second.
1.8.0
- ДобавленоReferral program: 5 % of referred spend, credited to balance as it is earned.
- ДобавленоSpanish, Portuguese and Chinese interface translations.
- ИзмененоDefault rate limit raised from 30 to 60 requests per minute per key.
1.7.0
- ДобавленоTwo-factor authentication with TOTP and ten single-use recovery codes.
- ДобавленоAn active-session list in Settings, with per-device sign-out.
- ИзмененоSessions are bound to a rotating token, so a stolen cookie stops working at the next rotation.
1.6.1
- ИсправленоInvoice PDFs rendered Cyrillic company names as empty boxes.
- ИсправленоThe code extractor missed four-digit codes wrapped in non-breaking spaces, which two Brazilian senders use.
1.6.0
- ДобавленоPDF invoices for every top-up, with optional company details on the document.
- Добавлено31 services, including Bumble, Signal, Grindr and Airbnb.
- ИзмененоActivation history keeps the full SMS body for 30 days instead of the extracted code alone.
1.5.0
- ДобавленоMulti-SMS mode: keep an activation open for further messages from the same service, billed at 30 % of the base price per extra message.
- Добавлено18 African countries, including Nigeria, Kenya, Ghana, South Africa, Egypt and Morocco.
- ИзмененоRate-limit headers are returned on 429 responses, so back-off logic has something to read.
1.4.1
- ИсправленоsetStatus with status 8 released the number but left the order marked as waiting for about 90 seconds.
- ИсправленоCancelling an activation twice within the same second credited the refund twice.
1.4.0
handler_api compatibility
- ДобавленоA compatibility endpoint that speaks the classic handler_api protocol, so existing scripts run unchanged with only the api_key swapped.
- ДобавленоgetBalance, getNumber, getStatus and setStatus, returning the original ACCESS_ and STATUS_ tokens.
- ИзмененоAPI keys are stored hashed. Existing keys were rotated and the plaintext is no longer retrievable.
1.3.1
- ИсправленоGET /v1/prices returned services with zero stock when available=true was passed.
- ИсправленоLong service names overflowed the activation card on screens narrower than 380 px.
1.3.0
- Добавлено22 countries across Latin America and South-East Asia, including Brazil, Colombia, Peru, Vietnam and the Philippines.
- ДобавленоEmail notification when a code arrives, opt-in per account.
- ИзмененоPrices and stock refresh every 60 seconds instead of every five minutes.
1.2.1
- ИсправленоStock counters for Indonesia showed the provider's whole pool instead of the subset registered as Telegram-capable.
- ИсправленоPassword reset links expired after 15 minutes rather than the documented 60.
1.2.0
- ДобавленоRussian interface translation, including the catalogue and the support forms.
- ДобавленоGET /v1/prices, returning live price and stock per country for a service.
- ДобавленоA per-service success rate over the trailing 24 hours, shown on every price row.
2019
3 релизов
1.1.0
- ДобавленоNine countries: Poland, Romania, Portugal, Czechia, Hungary, Bulgaria, Croatia, Slovakia and Lithuania.
- ДобавленоDiscord, Tinder, Steam and Yandex.
- ДобавленоUSDT-ERC20 and Litecoin as top-up currencies.
- ИзмененоThe activation window is 20 minutes, up from 15, after measuring how long real delivery tails actually run.
1.0.1
- ИсправленоActivations bought between 00:00 and 00:05 UTC were billed against the previous day's price snapshot.
- ИсправленоAn OxaPay callback for a Bitcoin deposit could be replayed into a duplicate credit when the first callback timed out.
- ИзмененоBalance is credited on the first network confirmation instead of the third.
1.0.0
Public launch
VirtualSMSNumbers opens to the public with one-time activations in 14 countries and a prepaid balance funded in crypto.
- ДобавленоOne-time SMS activations across 14 countries and 40 services.
- ДобавленоA prepaid balance in euros, funded with BTC and USDT-TRC20 through OxaPay.
- ДобавленоPOST /v1/activations and GET /v1/activations/{id}, authenticated with a bearer key.
- ДобавленоAutomatic refund to balance when no message arrives inside the 15-minute activation window, with no ticket to open.