Authentication API for C Sharp
Send OTP codes or integrate 2-factor authentication with our API for C Sharp easily and securely. Try our API for C Sharp for free. Our team will help you improve the security and authentication of your app on C Sharp.
Authentication API functionality
OTP with C Sharp
String afilnet_class="otp";
String afilnet_method="generateotp";
String afilnet_user="user";
String afilnet_password="password";
String afilnet_type="number";
String afilnet_destination="34600000000";
String afilnet_time="1";
String afilnet_timetype="days";
String afilnet_length="6";
String afilnet_otpformat="all";
String afilnet_output="";
// Create an URL request
WebRequest request = WebRequest.Create("https://www.afilnet.com/api/http/?class="+afilnet_class+"&method="+afilnet_method+"&user="+afilnet_user+"&password="+afilnet_password+"&type="+afilnet_type+"&destination="+afilnet_destination+"&time="+afilnet_time+"&timetype="+afilnet_timetype+"&length="+afilnet_length+"&otpformat="+afilnet_otpformat+"&output="+afilnet_output);
// Get the response
WebResponse response = request.GetResponse ();
// Get the stream returned by the server
Stream dataStream = response.GetResponseStream();
// Open the stream
StreamReader reader = new StreamReader (dataStream);
// Read the Response
String result = reader.ReadToEnd ();
// Asign vars
var data = new NameValueCollection();
data["class"] = "otp";
data["method"] = "generateotp";
data["user"] = "user";
data["password"] = "password";
data["type"] = "number";
data["destination"] = "34600000000";
data["time"] = "1";
data["timetype"] = "days";
data["length"] = "6";
data["otpformat"] = "all";
data["output"] = "";
// Create Web client
var wb = new WebClient();
// Execute POST petition
var response = wb.UploadValues("https://www.afilnet.com/api/http/", "POST", data);
// Get response
string responseString = Encoding.UTF8.GetString(response);
// Asign vars
var data = new NameValueCollection();
data["class"] = "otp";
data["method"] = "generateotp";
data["type"] = "number";
data["destination"] = "34600000000";
data["time"] = "1";
data["timetype"] = "days";
data["length"] = "6";
data["otpformat"] = "all";
data["output"] = "";
// Create Web client
var wb = new WebClient { Credentials = new NetworkCredential("user", "password") };
// Execute POST petition
var response = wb.UploadValues("https://www.afilnet.com/api/basic/", "POST", data);
// Get response
string responseString = Encoding.UTF8.GetString(response);
String afilnet_class="otp";
String afilnet_method="generateotp";
String afilnet_user="user";
String afilnet_password="password";
String afilnet_type="number";
String afilnet_destination="34600000000";
String afilnet_time="1";
String afilnet_timetype="days";
String afilnet_length="6";
String afilnet_otpformat="all";
String afilnet_output="";
// Allow SSL/TLS config
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
// We create the webservice instance (Register Web Service first in project)
var service = new WebService.ApplicationServicesPortTypeClient();
// Call to WebService method
String response = service.call(afilnet_user, afilnet_password, afilnet_class, afilnet_method, "{\"type\":\""+afilnet_type+"\",\"destination\":\""+afilnet_destination+"\",\"time\":\""+afilnet_time+"\",\"timetype\":\""+afilnet_timetype+"\",\"length\":\""+afilnet_length+"\",\"otpformat\":\""+afilnet_otpformat+"\",\"output\":\""+afilnet_output+"\"}");
Parameter | Description | Compulsory / Optional |
---|---|---|
class=otp | Class requested: Class to which the request is made | Compulsory |
method=generateotp | 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 |
type | Type of group (email or mobile) | Compulsory |
destination | Mobile number or destination email | Compulsory |
time | Number of days, weeks, months or years | Optional |
timetype | Type of time (Posible value: minutes, hours, days, weeks, months o years) | Optional |
length | Length of the password to generate | Optional |
otpformat | Format of the password to generate, if it includes all the characters, only numbers or only letters (all, numbers, letters) | Optional |
output | Output format of the result | Optional |
Answer:
- status
-
result (if status=success), here you will receive the following values:
- status
- code
- 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 |
INCORRECT_TIME_TYPE | Incorrect type of time (possible values: minutes, hours, days, weeks, months or years) |
INCORRECT_TYPE | Incorrect type. The type must be mobile or email |
INCORRECT_FORMAT | The recipient's format is not correct (verify the recipient's email or number) |
INCORRECT_OTP_FORMAT | The OTP format to generate does not exist, this must be one of the following values: all, letters, numbers |
Verify OTP with C Sharp
String afilnet_class="otp";
String afilnet_method="generateotp";
String afilnet_user="user";
String afilnet_password="password";
String afilnet_type="number";
String afilnet_destination="34600000000";
String afilnet_time="1";
String afilnet_timetype="days";
String afilnet_length="6";
String afilnet_otpformat="all";
String afilnet_output="";
// Allow SSL/TLS config
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
// We create the webservice instance (Register Web Service first in project)
var service = new WebService.ApplicationServicesPortTypeClient();
// Call to WebService method
String response = service.call(afilnet_user, afilnet_password, afilnet_class, afilnet_method, "{\"type\":\""+afilnet_type+"\",\"destination\":\""+afilnet_destination+"\",\"time\":\""+afilnet_time+"\",\"timetype\":\""+afilnet_timetype+"\",\"length\":\""+afilnet_length+"\",\"otpformat\":\""+afilnet_otpformat+"\",\"output\":\""+afilnet_output+"\"}");String afilnet_class="otp";
String afilnet_method="verifyotp";
String afilnet_user="user";
String afilnet_password="password";
String afilnet_destination="34600000000";
String afilnet_code="A73HF3I";
String afilnet_output="";
// Create an URL request
WebRequest request = WebRequest.Create("https://www.afilnet.com/api/http/?class="+afilnet_class+"&method="+afilnet_method+"&user="+afilnet_user+"&password="+afilnet_password+"&destination="+afilnet_destination+"&code="+afilnet_code+"&output="+afilnet_output);
// Get the response
WebResponse response = request.GetResponse ();
// Get the stream returned by the server
Stream dataStream = response.GetResponseStream();
// Open the stream
StreamReader reader = new StreamReader (dataStream);
// Read the Response
String result = reader.ReadToEnd ();
// Asign vars
var data = new NameValueCollection();
data["class"] = "otp";
data["method"] = "verifyotp";
data["user"] = "user";
data["password"] = "password";
data["destination"] = "34600000000";
data["code"] = "A73HF3I";
data["output"] = "";
// Create Web client
var wb = new WebClient();
// Execute POST petition
var response = wb.UploadValues("https://www.afilnet.com/api/http/", "POST", data);
// Get response
string responseString = Encoding.UTF8.GetString(response);
// Asign vars
var data = new NameValueCollection();
data["class"] = "otp";
data["method"] = "verifyotp";
data["destination"] = "34600000000";
data["code"] = "A73HF3I";
data["output"] = "";
// Create Web client
var wb = new WebClient { Credentials = new NetworkCredential("user", "password") };
// Execute POST petition
var response = wb.UploadValues("https://www.afilnet.com/api/basic/", "POST", data);
// Get response
string responseString = Encoding.UTF8.GetString(response);
String afilnet_class="otp";
String afilnet_method="verifyotp";
String afilnet_user="user";
String afilnet_password="password";
String afilnet_destination="34600000000";
String afilnet_code="A73HF3I";
String afilnet_output="";
// Allow SSL/TLS config
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
// We create the webservice instance (Register Web Service first in project)
var service = new WebService.ApplicationServicesPortTypeClient();
// Call to WebService method
String response = service.call(afilnet_user, afilnet_password, afilnet_class, afilnet_method, "{\"destination\":\""+afilnet_destination+"\",\"code\":\""+afilnet_code+"\",\"output\":\""+afilnet_output+"\"}");
Parameter | Description | Compulsory / Optional |
---|---|---|
class=otp | Class requested: Class to which the request is made | Compulsory |
method=verifyotp | 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 |
destination | Mobile number or destination email | Compulsory |
code | Password to verify | Optional |
output | Output format of the result | Optional |
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 |
CODE_NOT_FOUND | The code sent is incorrect or has expired |
Which API for C Sharp should I use?
Discover the advantages and disadvantages of each of our APIs. Find out which API is best for your Software in C Sharp.
This API allows you to connect to us from C Sharp 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 C Sharp 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 C Sharp 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 C Sharp, 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 C Sharp, 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 C Sharp with our OTP (One-Time Password) 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.