Valitse numero ja hinta yhdessä
Osta yksi tietty numero, joka on valittu tuoreesta vapaiden numeroiden hausta. Käytä valitun hakutuloksen kenttää info.uuid numeron tunnisteena ja yhtä saman hakutuloksen kentän price[].uuid arvoista hinnan tunnisteena. Reitti hyväksyy myös kokonaisen tallennetun numeron, mutta maan, alueen tai numeron etuliitteen tunniste ei korvaa numeron valintaa.
Haku tai tallennettujen hintatietojen lukeminen ei varaa numeroa eikä lukitse sen hintaa. Varmista valittu avausmaksu, kuukausimaksu, saapuvan puheluminuutin hinta, hintaan sisältyvät minuutit ja kanavat sekä tilin osto-oikeudet ja rekisteröintivaatimukset. Tarkastellussa apufunktiossa alustava perussumma on avausmaksun ja kuukausimaksun summa. Valitun hinnoitteluvaihtoehdon kaikki palveluntarjoajakohtaiset maksut ja ehdot on varmistettava.
Lähetä suojattu ostopyyntö POST-menetelmällä
Käytä käytössä olevaa API-tiliä HTTPS-yhteydellä sallitusta lähde-IP-osoitteesta. Seuraava komento tekee oston, ei hintatarjousta eikä koekäyttöä ilman ostoa. Aseta jokainen muuttuja saman tuoreen numero- ja hintavalinnan perusteella. Enimmäishintakentissä säilyy vanha etuliite restore_quote_; nykyinen portaali käyttää niitä myös tiettyjen numeroiden suojattuihin ostoihin.
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
--data-urlencode "restore_quote_price_id=$PRICE_ID" \
--data-urlencode "restore_quote_setup=$SETUP_PRICE" \
--data-urlencode "restore_quote_monthly=$MONTHLY_PRICE" \
--data-urlencode "restore_quote_per_minute=$PER_MINUTE_PRICE" \
--data-urlencode "restore_quote_channels=$CHANNELS" \
"https://api.multitel.net/v3/rentnumber/$NUMBER_ID/$PRICE_ID"Käytä esimerkin mukaista lomakemuotoista POST-pyyntöä. Apufunktio osaa jäsentää myös JSON-syötteen ja asetukset sisältävän kääreobjektin, mutta tämä tarkastelu ei osoita niiden toimivan täysin samalla tavalla kaikissa hintatarjous- ja palveluntarjoajakohtaisissa käsittelypoluissa. Älä käytä GET-menetelmää ostamiseen, vaikka tämä vanha koordinaattori ei erikseen tarkista pyyntömenetelmää.
| Kenttä | Merkitys |
|---|---|
| NUMBER_ID | Hausta valitun numeron UUID-tunniste tai kokonainen tallennettu numero. Yksi numero pyyntöä kohden. |
| PRICE_ID | Valittuun numeroon ja tiliisi liittyvä hinnan UUID-tunniste. Anna se aina nimenomaisesti. |
| restore_quote_price_id | Arvon on vastattava käsittelyssä määritettyä hinnan tunnistetta. Tämän kentän antaminen ottaa hintatarjouksen tarkistukset käyttöön. Se ei ole idempotenssiavain. |
| restore_quote_setup | Suurin hyväksytty avausmaksu äärellisenä, ei-negatiivisena lukuarvona. |
| restore_quote_monthly | Suurin hyväksytty kuukausimaksu äärellisenä, ei-negatiivisena lukuarvona. |
| restore_quote_per_minute | Suurin hyväksytty saapuvan puheluminuutin hinta äärellisenä, ei-negatiivisena lukuarvona. |
| restore_quote_channels | Valitun hintavaihtoehdon täsmällinen kanavamäärä kokonaislukuna, ei pyyntö vaihtaa eri kanavamäärän sisältävään vaihtoehtoon. |
Anna kaikki numeeriset hintatarjouskentät aina, kun annat hintatarjouksen hinnan tunnisteen. Muuttunut tunniste, enimmäishinnan ylittävä hinta, puuttuva tai virheellinen enimmäishinta, muuttunut kanavamäärä tai varattu hintatarjouslukko palauttaa API-koodin 409 ennen vuokrauspyynnön lähettämistä valitulle palveluntarjoajalle. Vertailut sallivat pienen liukulukutoleranssin. Käytä hinnoitteluvaihtoehdon todellisia näytettyjä arvoja käsin pyöristetyn hinnan sijaan.
Suojatarkistukset eivät tee koko työnkulusta ostotonta koekäyttöä tai transaktiota. Rekisteröintitietojen hakuja, identiteettien provisiointia tai muita apufunktion toimintoja voidaan suorittaa ennen näitä tarkistuksia. Tarkistukset eivät myöskään lukitse ulkoista numerovarantoa eivätkä korvaa tilikohtaisia ostorajoituksia.
Rekisteröinti ja aktivointi
Lisää tarvittaessa RegistrationID-lomakekenttä, joka sisältää asiakkaan omistaman rekisteröintiprofiilin UUID-tunnisteen. Se ei ole ladatun todisteasiakirjan, toimittajan osoitteen eikä erillisen identiteettiobjektin tunniste. Apufunktio hakee profiilin todennetun tilin perusteella ja hylkää puuttuvat tai ei-saatavilla olevat profiilit.
Joidenkin tuettujen numerovarantojen numeroita voi ostaa ennen rekisteröinnin valmistumista. Toisten varantojen numerot edellyttävät profiilia jo ennen ostoa. Operaattorikohtaista tarkistusta tai provisiointia voidaan silti tarvita. Älä tulkitse onnistunutta ostoa tai ennakkotarkistuksen puuttumista vapautukseksi rekisteröinnistä tai välittömäksi aktivoinniksi.
Jos vastauksessa on kenttä registration_requirements, se yksilöi jäsenneltyjen vaatimusten haun maan ja numerotyypin perusteella. Täytä soveltuvat vaatimukset rekisteröintiluettelon ja todisteasiakirjojen käsittelyprosessin avulla. Palautettu teksti ja metatiedot eivät itsessään merkitse profiilin hyväksyntää.
Vältä hinnoitteluvaihtoehdon huomaamatonta vaihtumista
Vanha koordinaattori voi päätellä puuttuvan hinnan välimuistissa olevista numerotiedoista. Se voi myös käyttää välimuistissa olevan numeron etuliitteen uusinta tilikohtaista hintaa, jos nimenomaisesti annettua hinnan tunnistetta ei enää ole, ja päivittää välimuistiin tallennetun sallitun hinnan valinnan. Älä luota näihin varamenettelyihin asiakkaan hyväksymän hinnoitteluvaihtoehdon valinnassa.
Anna valittu hinta nimenomaisesti sekä sitä vastaavat hintatarjouksen suojatarkistuskentät. Hintatarjouksen tunnisteen tarkistus estää toiseen tunnisteeseen siirtymisen ennen vuokrauspyynnön lähettämistä. Päivitä haku vanhentuneen hinnan aiheuttaman ristiriidan jälkeen ja hanki uudelle valinnalle hyväksyntä. Älä poista suojatarkistuksia oston pakottamiseksi.
Kaikille käsittelypoluille ei ole taattua varausaikaa eikä kaikkialla noudatettavaa välimuistin voimassaoloaikaa. Numeron saatavuus, tilin hintarajat ja ostokäytännöt tarkistetaan työnkulussa uudelleen, mutta palveluntarjoajakohtaisen toiminnan kattava tarkastelu on vielä kesken.
Lisäasetukset: tilin reitityksen oletusarvot
Ostettava numero voi periä tilin nykyiset puhepuhelujen kohteet, varareitityksen kohteet, tekstiviestikohteen ja saapuvan liikenteen trunkin ensisijaisuusasetuksen. Tarkista nämä oletusarvot ennen tilaamista. Reititysasetusten pois jättäminen ei takaa, että numero olisi määrittämätön. Tarkasteltu apufunktio ottaa automaattisen uusimisen oletusarvoisesti käyttöön.
| Asetus | Arvon määräytyminen |
|---|---|
| uri, uri2, uri3 | Pois jätetyt arvot perivät vastaavat tilin oletusarvot. Nimenomaisesti annetut tyhjät arvot tyhjentävät apufunktion arvon sen sijaan, että oletusarvo perittäisiin. Käytä kelvollisia, valittuun reititystilaan sopivia kohteita. |
| smsuri | Pois jätetty arvo perii tilin tekstiviestikohteen. Nimenomaisesti annettu tyhjä arvo tyhjentää sen apufunktiossa. |
| origintrunk | Tunnistettu, nimenomaisesti annettu trunkin tunniste on ensisijainen. Jos arvoa ei pystytä ratkaisemaan, käyttöön voi tulla tilin ensisijaisuusasetus tai vanha oletusarvo virheen palauttamisen sijaan. |
| forward_destination, forwarding_destination, type | Reititystilan vaihtoehtoiset kenttänimet, joiden ei-tyhjiä arvoja käytetään tässä etusijajärjestyksessä. Käytä tilin reititysmääritysten tukemia arvoja, älä arvaa reititystilan numeroarvoa. |
| RegistrationID | Asiakkaaseen rajattu rekisteröintiprofiilin haku, joka on erillinen reitityskohteista. |
| autorenew | Oletusarvo on 1. Apufunktio tarkistaa, onko arvo ei-tyhjä, joten 0 ei poista uusimista luotettavasti käytöstä tämän ostokentän kautta. Käytä tilin tuettuja uusimisen hallintatoimintoja ja varmista tallennettu asetus. |
Nämä ovat yhteisen apufunktion toimintaperiaatteita, eivät takuu siitä, että jokainen toimittaja tallentaisi kaikki valinnaiset asetukset samalla tavalla. Käytössä on myös muita vanhoja puhepuhelu-, vastaaja-, faksi- ja tekstiviestikenttiä, mutta ne edellyttävät vielä kattavaa palveluntarjoajakohtaista tarkastelua. Tarkista ostetun numeron tallennetut määritykset tilin hallintaprosessin kautta ennen kuin luotat puhelujen tai viestien toimintaan.
Vastaus
Kuvitteellinen esimerkki yksinkertaisesta ostosta. Arvot ja ominaisuudet vaihtelevat valitun hinnoitteluvaihtoehdon mukaan.
{
"status": {
"code": 200,
"msg": ""
},
"response": {
"number": "12025550123",
"price": {
"per_minute": "0.0100",
"free_minutes": "100",
"setup_price": "2.00",
"monthly_price": "4.00",
"channels": "2",
"overflow": "0"
},
"features": [
"voice"
],
"needs_registration": 0,
"registration_requirements": null
}
}Koordinaattori käyttää omaa vastausrakennettaan, jossa ovat kentät status.code/status.msg ja response. Rakenteessa ei taata olevan kenttää status.results. Virhetilanteessa vastausluettelo on yleensä tyhjä. Kun pyyntö onnistuu, tarkista palautettu numero ja hinta ja varmista sen jälkeen tilin numerovarannon ja rekisteröintitilan vastaavuus. Palveluntarjoajan hyväksyntä ei ole todellinen puhelu-, tekstiviesti- tai faksitesti.
Virheet ja epävarmat tulokset
| API-koodi | Merkitys |
|---|---|
| 403 | Tilin hinta- tai ostorajoitukset, ei-saatavilla oleva hintavalinta tai rekisteröintiprofiili, johon ei ole pääsyä, voivat estää käsittelyn. |
| 404 | Numeron, hinnan tai numeron etuliitteen valinta puuttuu tai ei ole saatavilla. |
| 409 | Numero on jo aktiivinen, hintatarjouksen suojatarkistuksen arvo ei enää täsmää tai toinen suojattu toiminto pitää lukkoa hallussaan. |
| 422 | Rekisteröintitiedot ovat pakollisia, puutteellisia tai niitä ei voida provisioida tarkastelluissa rekisteröinnin käsittelypoluissa. |
| 500 ja muut palveluntarjoaja- tai tilikohtaiset koodit | Palveluntarjoajaan, paikalliseen käsittelyyn tai käytäntöihin liittyvä virhe. Nämä eivät kaikissa tapauksissa todista, ettei ostoa tai veloitusta tapahtunut. |
Lue varsinainen API-vastauksen sisältö HTTP-tilan lisäksi. Ulkoinen palveluntarjoaja voi hyväksyä vuokrauksen ennen kuin paikallinen ilmoitus, rekisteröinti tai muu käsittely epäonnistuu. Joissakin paikallisen numerovarannon allokoinneissa käytetään tietokantatransaktioita, mutta ulkoisten palveluntarjoajien tilauksille ei ole yleispätevää peruutusmekanismia. Tässä koordinaattorissa ei ole asiakkaan antamaa idempotenssiavainta.
Varmista tietojen vastaavuus ennen uutta yritystä
- Tallenna hyväksytty numero, hinta ja hintatarjouksen enimmäishinnat sovelluksesi tilaustietueeseen ennen pyynnön lähettämistä yhden kerran.
- Lue saman tilin ostettujen numeroiden luettelo ja numeron tiedot pyynnön jälkeen, myös aikakatkaisun tai virheen jälkeen.
- Jos numero on olemassa, tarkista sen hinta, uusiminen, reititys ja rekisteröintitila uuden ostopyynnön tekemisen sijaan.
- Jos tulos on edelleen epävarma, pyydä tukea varmistamaan palveluntarjoajan tilauksen ja tilin laskutuksen vastaavuus ennen uutta yritystä. Pelkkä virheilmoitus tai vanhan lokin onnistumismerkintä ei ole riittävä todiste.
- Kun omistajuus ja aktivointi on vahvistettu, suorita tilin normaalit reititystarkistukset ja palvelutestit.