Reseller API for Go lang
Manage your reseller account with our API for Go lang easily and securely. Try our API for Go lang for free. Our team will help you manage the clients of your reseller account in Go lang.
API functionality to Resellers
Add a subaccount with Go lang
package main
import (
"io/ioutil"
"log"
"net/http"
)
func main() {
var aclass string = "subaccount"
var method string = "addsubaccount"
var user string = "user"
var password string = "password"
var accountemail string = "email@email.com"
var accountpassword string = "password"
var namelastname string = "name+lastname"
var iscompany string = "1"
var companyname string = "mycompany"
var documentid string = "123456789A"
var language string = "en"
var countrycode string = "us"
var cityid string = "1"
var cityname string = "town"
var zipcode string = "123456"
var address string = "address"
var request string = "https://www.afilnet.com/api/http/?class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&accountemail="+accountemail+"&accountpassword="+accountpassword+"&namelastname="+namelastname+"&iscompany="+iscompany+"&companyname="+companyname+"&documentid="+documentid+"&language="+language+"&countrycode="+countrycode+"&cityid="+cityid+"&cityname="+cityname+"&zipcode="+zipcode+"&address="+address
resp, err := http.Get(request)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"addsubaccount"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
"accountpassword" : {"password"},
"namelastname" : {"name+lastname"},
"iscompany" : {"1"},
"companyname" : {"mycompany"},
"documentid" : {"123456789A"},
"language" : {"en"},
"countrycode" : {"us"},
"cityid" : {"1"},
"cityname" : {"town"},
"zipcode" : {"123456"},
"address" : {"address"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
Parameter | Description | Compulsory / Optional |
---|---|---|
class=subaccount | Class requested: Class to which the request is made | Compulsory |
method=addsubaccount | Class method requested: Method of the class to which the request is made | Compulsory |
user | User and e-mail of your Afilnet account | Compulsory |
password | Password of your Afilnet account | Compulsory |
accountemail | Account email | Compulsory |
accountpassword | Account password | Compulsory |
namelastname | Name and surname of the contact person | Compulsory |
iscompany | (0) If it is a natural person or (1) if it is a company | Compulsory |
companyname | Name of the company (in case it is a company) | Optional |
documentid | Company identification document code | Compulsory |
language | Language of the subaccount. See attached table | Compulsory |
countrycode | ISO country code in ISO-3166-1 ALPHA-2 format | Compulsory |
cityid | City identifier | Compulsory |
cityname | Name of the city or town to which it belongs | Compulsory |
zipcode | Postal Code | Compulsory |
address | Physical address | Compulsory |
Answer:
- status
-
result (if status=success), here you will receive the following values:
- No additional values will be sent to you
- error (if status=error), here you will receive the error code
Error codes:
Code | Description |
---|---|
MISSING_USER | User or email not included |
MISSING_PASSWORD | Password not included |
MISSING_CLASS | Class not included |
MISSING_METHOD | Method not included |
MISSING_COMPULSORY_PARAM | Compulsory parameter not included |
INCORRECT_USER_PASSWORD | Incorrect user or password |
INCORRECT_CLASS | Incorrect class |
INCORRECT_METHOD | Incorrect method |
EMPTY_COUNTRYCODE | The country code is empty |
EMPTY_FIELDS | Some mandatory field is empty |
COUNTRY_NOT_FOUND | There is no country with the indicated code |
EMPTY_CITY | You have not indicated the city |
CITY_NOT_FOUND | The indicated city does not exist |
INCORRECT_EMAIL | The email included is not valid |
INCORRECT_PASSWORD | The password included is not valid |
RESELLER_ACCOUNT_REQUIRED | The user's account does not have the reseller plan active |
Modify a subaccount with Go lang
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"addsubaccount"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
"accountpassword" : {"password"},
"namelastname" : {"name+lastname"},
"iscompany" : {"1"},
"companyname" : {"mycompany"},
"documentid" : {"123456789A"},
"language" : {"en"},
"countrycode" : {"us"},
"cityid" : {"1"},
"cityname" : {"town"},
"zipcode" : {"123456"},
"address" : {"address"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}package main
import (
"io/ioutil"
"log"
"net/http"
)
func main() {
var aclass string = "subaccount"
var method string = "modifysubaccount"
var user string = "user"
var password string = "password"
var accountemail string = "email@email.com"
var modifypassword string = "1"
var accountpassword string = "password"
var namelastname string = "name+lastname"
var iscompany string = "1"
var companyname string = "mycompany"
var documentid string = "123456789A"
var language string = "en"
var countrycode string = "us"
var cityid string = "1"
var cityname string = "town"
var zipcode string = "123456"
var address string = "address"
var request string = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&accountemail="+accountemail+"&modifypassword="+modifypassword+"&accountpassword="+accountpassword+"&namelastname="+namelastname+"&iscompany="+iscompany+"&companyname="+companyname+"&documentid="+documentid+"&language="+language+"&countrycode="+countrycode+"&cityid="+cityid+"&cityname="+cityname+"&zipcode="+zipcode+"&address="+address
resp, err := http.Get(request)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"modifysubaccount"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
"modifypassword" : {"1"},
"accountpassword" : {"password"},
"namelastname" : {"name+lastname"},
"iscompany" : {"1"},
"companyname" : {"mycompany"},
"documentid" : {"123456789A"},
"language" : {"en"},
"countrycode" : {"us"},
"cityid" : {"1"},
"cityname" : {"town"},
"zipcode" : {"123456"},
"address" : {"address"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
Parameter | Description | Compulsory / Optional |
---|---|---|
class=subaccount | Class requested: Class to which the request is made | Compulsory |
method=modifysubaccount | Class method requested: Method of the class to which the request is made | Compulsory |
user | User and e-mail of your Afilnet account | Compulsory |
password | Password of your Afilnet account | Compulsory |
accountemail | Account email | Compulsory |
modifypassword | Compulsory | |
accountpassword | Account password | Optional |
namelastname | Name and surname of the contact person | Compulsory |
iscompany | (0) If it is a natural person or (1) if it is a company | Compulsory |
companyname | Name of the company (in case it is a company) | Optional |
documentid | Company identification document code | Compulsory |
language | Language of the subaccount. See attached table | Compulsory |
countrycode | ISO country code in ISO-3166-1 ALPHA-2 format | Compulsory |
cityid | City identifier | Compulsory |
cityname | Name of the city or town to which it belongs | Compulsory |
zipcode | Postal Code | Compulsory |
address | Physical address | Compulsory |
Answer:
- status
-
result (if status=success), here you will receive the following values:
- No additional values will be sent to you
- error (if status=error), here you will receive the error code
Error codes:
Code | Description |
---|---|
MISSING_USER | User or email not included |
MISSING_PASSWORD | Password not included |
MISSING_CLASS | Class not included |
MISSING_METHOD | Method not included |
MISSING_COMPULSORY_PARAM | Compulsory parameter not included |
INCORRECT_USER_PASSWORD | Incorrect user or password |
INCORRECT_CLASS | Incorrect class |
INCORRECT_METHOD | Incorrect method |
EMPTY_COUNTRYCODE | The country code is empty |
EMPTY_FIELDS | Some mandatory field is empty |
COUNTRY_NOT_FOUND | There is no country with the indicated code |
EMPTY_CITY | You have not indicated the city |
CITY_NOT_FOUND | The indicated city does not exist |
INCORRECT_EMAIL | The email included is not valid |
INCORRECT_PASSWORD | The password included is not valid |
ACCOUNT_NOT_FOUND | User account has not been found |
Get list of subaccounts with Go lang
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"modifysubaccount"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
"modifypassword" : {"1"},
"accountpassword" : {"password"},
"namelastname" : {"name+lastname"},
"iscompany" : {"1"},
"companyname" : {"mycompany"},
"documentid" : {"123456789A"},
"language" : {"en"},
"countrycode" : {"us"},
"cityid" : {"1"},
"cityname" : {"town"},
"zipcode" : {"123456"},
"address" : {"address"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}package main
import (
"io/ioutil"
"log"
"net/http"
)
func main() {
var aclass string = "subaccount"
var method string = "getsubaccounts"
var user string = "user"
var password string = "password"
var request string = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password
resp, err := http.Get(request)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"getsubaccounts"},
"user" : {"user"},
"password" : {"password"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
Parameter | Description | Compulsory / Optional |
---|---|---|
class=subaccount | Class requested: Class to which the request is made | Compulsory |
method=getsubaccounts | Class method requested: Method of the class to which the request is made | Compulsory |
user | User and e-mail of your Afilnet account | Compulsory |
password | Password of your Afilnet account | Compulsory |
Answer:
- status
-
result (if status=success), here you will receive the following values:
- No additional values will be sent to you
- error (if status=error), here you will receive the error code
Error codes:
Code | Description |
---|---|
MISSING_USER | User or email not included |
MISSING_PASSWORD | Password not included |
MISSING_CLASS | Class not included |
MISSING_METHOD | Method not included |
MISSING_COMPULSORY_PARAM | Compulsory parameter not included |
INCORRECT_USER_PASSWORD | Incorrect user or password |
INCORRECT_CLASS | Incorrect class |
INCORRECT_METHOD | Incorrect method |
Delete a subaccount with Go lang
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"getsubaccounts"},
"user" : {"user"},
"password" : {"password"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}package main
import (
"io/ioutil"
"log"
"net/http"
)
func main() {
var aclass string = "subaccount"
var method string = "deletesubaccount"
var user string = "user"
var password string = "password"
var accountemail string = "email@email.com"
var request string = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&accountemail="+accountemail
resp, err := http.Get(request)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"deletesubaccount"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
Parameter | Description | Compulsory / Optional |
---|---|---|
class=subaccount | Class requested: Class to which the request is made | Compulsory |
method=deletesubaccount | Class method requested: Method of the class to which the request is made | Compulsory |
user | User and e-mail of your Afilnet account | Compulsory |
password | Password of your Afilnet account | Compulsory |
accountemail | Account email | Compulsory |
Answer:
- status
-
result (if status=success), here you will receive the following values:
- No additional values will be sent to you
- error (if status=error), here you will receive the error code
Error codes:
Code | Description |
---|---|
MISSING_USER | User or email not included |
MISSING_PASSWORD | Password not included |
MISSING_CLASS | Class not included |
MISSING_METHOD | Method not included |
MISSING_COMPULSORY_PARAM | Compulsory parameter not included |
INCORRECT_USER_PASSWORD | Incorrect user or password |
INCORRECT_CLASS | Incorrect class |
INCORRECT_METHOD | Incorrect method |
ACCOUNT_NOT_FOUND | User account has not been found |
Transfer balance to a subaccount with Go lang
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"deletesubaccount"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}package main
import (
"io/ioutil"
"log"
"net/http"
)
func main() {
var aclass string = "subaccount"
var method string = "transferbalance"
var user string = "user"
var password string = "password"
var accountemail string = "email@email.com"
var balancetotransfer string = "10"
var request string = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&accountemail="+accountemail+"&balancetotransfer="+balancetotransfer
resp, err := http.Get(request)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
package main
import (
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
formData := url.Values{
"class" : {"subaccount"},
"method" : {"transferbalance"},
"user" : {"user"},
"password" : {"password"},
"accountemail" : {"email@email.com"},
"balancetotransfer" : {"10"},
}
resp, err := http.PostForm("https://www.afilnet.com/api/http/", formData)
if(err != nil) {
log.Fatalln(err)
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)
if(err != nil) {
log.Fatalln(err)
}
}
Parameter | Description | Compulsory / Optional |
---|---|---|
class=subaccount | Class requested: Class to which the request is made | Compulsory |
method=transferbalance | Class method requested: Method of the class to which the request is made | Compulsory |
user | User and e-mail of your Afilnet account | Compulsory |
password | Password of your Afilnet account | Compulsory |
accountemail | Account email | Compulsory |
balancetotransfer | Indicates the balance to be transferred to the subaccount, a negative value can be used to subtract the balance from the subaccount. | Compulsory |
Answer:
- status
-
result (if status=success), here you will receive the following values:
- No additional values will be sent to you
- error (if status=error), here you will receive the error code
Error codes:
Code | Description |
---|---|
MISSING_USER | User or email not included |
MISSING_PASSWORD | Password not included |
MISSING_CLASS | Class not included |
MISSING_METHOD | Method not included |
MISSING_COMPULSORY_PARAM | Compulsory parameter not included |
INCORRECT_USER_PASSWORD | Incorrect user or password |
INCORRECT_CLASS | Incorrect class |
INCORRECT_METHOD | Incorrect method |
ACCOUNT_NOT_FOUND | User account has not been found |
NOT_ENOUGH_BALANCE | ERROR_NOT_ENOUGH_BALANCE |
INCORRECT_MIN_BALANCE | ERROR_INCORRECT_MIN_BALANCE |
Which API for Go lang should I use?
Discover the advantages and disadvantages of each of our APIs. Find out which API is best for your Software in Go lang.
This API allows you to connect to us from Go lang to send requests via HTTP GET requests. This request sends the parameters in the same URL as the request.
- HTTP GET is extremely simple to implement
- Information is sent unencrypted (passwords could be extracted from logs or cache)
- Maximum request of ~4000 characters
The POST request API allows you to connect to our API from Go lang by sending request parameters via HTTP POST parameters. The information is sent independently of the URL.
- HTTP POST is simple to implement
- Information is sent encrypted
- There is no limit on the size of the request
- Medium security
The basic authentication API allows the use of GET and POST requests in Go lang with an additional security layer, since in this case the username and password are sent in the header of the request.
- Basic authentication is easy to implement
- Access data is sent encrypted
- The size limit depends on the use of GET or POST
- Medium security
SOAP allows you to send requests in XML format with Go lang, SOAP adds an extra layer of security to API requests.
- SOAP integration is more complex
- Information is sent encrypted
- There is no limit on the size of the request
- Medium / High security
Our JSON API allows you to send requests in JSON format with Go lang, in addition this API adds the oAuth 2.0 protocol in the authentication that allows you to add an additional layer of security.
- JSON oAuth 2.0 integration is more complex
- Information is sent encrypted
- There is no limit on the size of the request
- High security
Connect Go lang with our Subaccounts API
Register as a client
In order to have access to the API you must be an Afilnet client. Registration will take a few minutes.
Request your free trial
Our company will offer you trial balance that will allow you to test with the API you need.
Integrate the API
Perform API integration using the programming language of your choice. If you have any questions or suggestions about the API, contact us
Welcome to Afilnet!
Everything ready!, has managed to improve its communications with Afilnet. We are here to support our API when you need it
Contact our team with any questions through the contact methods that we offer. Our team will try to offer you an immediate solution and will help you in the integration of our API in your Software.