NAV Navbar
JavaScript Node.JS Ruby Python Java
  • FAX.PLUS REST API v1.1.0
  • Authentication
  • Accounts
  • Numbers
  • Archives
  • Files
  • Outbox
  • Schemas
  • FAX.PLUS REST API v1.1.0

    Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

    This is the fax.plus API v1 developed for third party developers and organizations. In order to have a better coding experience with this API, let's quickly go through some points:

    - This API assumes /accounts as an entry point with the base url of https://restapi.fax.plus/v1.

    - This API treats all date and times sent to it in requests as UTC. Also, all dates and times returned in responses are in UTC

    - Once you have an access_token, you can easily send a request to the resource server with the base url of https://restapi.fax.plus/v1 to access your permitted resources. As an example to get the user's profile info you would send a request to https://restapi.fax.plus/v1/accounts/self when Authorization header is set to "Bearer YOUR_ACCESS_TOKEN" and custom header of x-fax-clientid is set to YOUR_CLIENT_ID

    Base URLs:

    Github: https://github.com/alohi

    Authentication

    OAuth2 authentication

    Description

    Authorization Code Grant
    The first step is to obtain an authorization code by redirecting the user to the https://accounts.fax.plus/login website and asking permission from the user. The redirection request would be in the format of https://accounts.fax.plus/login?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=ONE_OF_YOUR_REGISTERED_URIS&scope=SPACE_SEPARATED_LIST_OF_REQUESTED_SCOPES.
    Let's assume we have http://localhost as the registered URI and we want to request permission for scope all. So this would be the redirection uri: https://accounts.fax.plus/login?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=http://localhost&scope=all
    In the redirected page, the user will be asked for his username and password and review your requested permissions. If the user accepts to give the permissions to the client, he would be redirected to the given redirect uri, appended with the authorization code as http://localhost?code=XXXXXX
    The next step is to obtain an access token. The client must send a HTTP POST request with the Content-type of application/x-www-form-urlencoded containing client credentials, redirect_uri provided in previous request, and finally code given in last step.: https://accounts.fax.plus/token?grant_type=authorization_code&client_id=YOUR_CLIENT_ID&code=AUTHORIZATION_CODE_FROM_PREVIOUS_STEP&redirect_uri=http://localhost
    NOTE: In this request you have to set the HTTP Authorization header as Basic BASE64_ENCODEDED_VALUE_OF(CLIENT_ID:CLIENT_SECRET). In case of successful request you would be granted an access token.

    Refeshing An Access Token
    In case your access token gets expired, to renew your token pass the refresh token that you have received when obtaining an access token to https://accounts.fax.plus/token?grant_type=refresh_token&refresh_token=REFRESH_TOKEN while have Authorization header set to Basic BASE64_ENCODEDED_VALUE_OF(CLIENT_ID:CLIENT_SECRET)

    NOTE:the refresh token remains valid until either user revokes the permissions given to the client or being used to acquire a new access token. In latter case, a new refresh token would be provided alongside the given access token.

    Flows

    Flow: authorizationCode

    Scope Scope Description
    all for now when a user grant permission, all grants will be permitted

    Accounts

    getAccounts

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts

    Get account information of all members of your corporate account

    Only admin account can send request to this endpoint which returns accounts of all members

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    getUser

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/{user_id}',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/{user_id}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/{user_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/{user_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/{user_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/{user_id}

    Get account information for admin or member

    Get account information. For members user_id can only be self. form admin it can be user_id of any
    In case you want to get your own account information please use self as an alias for your user_id.

    Parameters

    Parameter In Type Required Description
    user_id path string true No description

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    updateUser

    Code samples

    var headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self',
      method: 'put',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "account_data": {
        "company_name": "Company name",
        "default_file_type": "pdf",
        "save_history": true
      },
      "account_type": "corporate_admin",
      "creation_date": "2017-05-06 05:22:21",
      "email": "[email protected]",
      "last_password_modification_date": "2017-05-06 05:22:21",
      "lastname": "Smith",
      "member_of": {},
      "notifications": {
        "black_list": {
          "uids": []
        },
        "settings": {
          "email": {
            "addresses": [
              "[email protected]"
            ],
            "low_credit": true,
            "new_feature": true,
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          },
          "language": "fa",
          "push_notifications": {
            "low_credit": true,
            "new_feature": true,
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          },
          "sms": {
            "low_credit": true,
            "new_feature": true,
            "numbers": [
              "+16699990000"
            ],
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          }
        }
      },
      "phone": "+16699990000",
      "profile_image": "",
      "settings": {
        "caller_id_name": "FAX.PLUS",
        "send_fax": {
          "options": {},
          "retry": {
            "count": 0,
            "delay": 0
          },
          "should_enhance": true
        }
      },
      "status": "active",
      "uid": "7724157c0974440293e45877c57f0703"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.put 'https://restapi.fax.plus/v1/accounts/self',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.put('https://restapi.fax.plus/v1/accounts/self', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    PUT /accounts/self

    Modify account information

    You can only modify your account

    Body parameter

    {
      "account_data": {
        "company_name": "Company name",
        "default_file_type": "pdf",
        "save_history": true
      },
      "account_type": "corporate_admin",
      "creation_date": "2017-05-06 05:22:21",
      "email": "[email protected]",
      "last_password_modification_date": "2017-05-06 05:22:21",
      "lastname": "Smith",
      "member_of": {},
      "notifications": {
        "black_list": {
          "uids": []
        },
        "settings": {
          "email": {
            "addresses": [
              "[email protected]"
            ],
            "low_credit": true,
            "new_feature": true,
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          },
          "language": "fa",
          "push_notifications": {
            "low_credit": true,
            "new_feature": true,
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          },
          "sms": {
            "low_credit": true,
            "new_feature": true,
            "numbers": [
              "+16699990000"
            ],
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          }
        }
      },
      "phone": "+16699990000",
      "profile_image": "",
      "settings": {
        "caller_id_name": "FAX.PLUS",
        "send_fax": {
          "options": {},
          "retry": {
            "count": 0,
            "delay": 0
          },
          "should_enhance": true
        }
      },
      "status": "active",
      "uid": "7724157c0974440293e45877c57f0703"
    }
    

    Parameters

    Parameter In Type Required Description
    user_id path string true No description
    body body Account false Request object for making changes in account

    Responses

    Status Meaning Description
    204 No Content Modify account information
    400 Bad Request No description
    500 Internal Server Error No description

    getMemberDetails

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/member-details/{member_id}

    Get member details

    Get your member details (quota and role)

    Parameters

    Parameter In Type Required Description
    member_id path string true No description

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    updateMemberDetails

    Code samples

    var headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}',
      method: 'put',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "quota": 400,
      "role": "Sales Manager"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.put 'https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.put('https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/member-details/{member_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    PUT /accounts/self/member-details/{member_id}

    Modify member details

    One of the paramters below is needed to modify member information

    Body parameter

    {
      "quota": 400,
      "role": "Sales Manager"
    }
    

    Parameters

    Parameter In Type Required Description
    member_id path string true No description
    body body MemberDetail false Request object for making changes in member details

    Responses

    Status Meaning Description
    204 No Content Modify account information
    400 Bad Request No description
    500 Internal Server Error No description

    Numbers

    listNumbers

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/numbers',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/numbers',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/numbers',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/numbers', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/numbers");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/numbers

    Get your numbers

    List all your purchased numbers

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    getNumber

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/numbers/{number}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/numbers/{number}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/numbers/{number}

    Get number information

    Get info of a single number

    Parameters

    Parameter In Type Required Description
    number path string true No description

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    updateNumber

    Code samples

    var headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
      method: 'put',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "assigned_to": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.put 'https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.put('https://restapi.fax.plus/v1/accounts/self/numbers/{number}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/numbers/{number}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    PUT /accounts/self/numbers/{number}

    Assign number

    With this API call you will be able to assign a specific number to a specific account (one of your members).

    Body parameter

    {
      "assigned_to": "string"
    }
    

    Parameters

    Parameter In Type Required Description
    number path string true No description
    body body NumberModification false Request object for making changes in number object
    » assigned_to body string false No description

    Responses

    Status Meaning Description
    204 No Content Assign an already purchased number to your members
    400 Bad Request No description
    500 Internal Server Error No description

    revokeNumber

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
      method: 'delete',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.delete 'https://restapi.fax.plus/v1/accounts/self/numbers/{number}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.delete('https://restapi.fax.plus/v1/accounts/self/numbers/{number}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/numbers/{number}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    DELETE /accounts/self/numbers/{number}

    Revoke number

    Revoke a specific number from your corporate member

    Parameters

    Parameter In Type Required Description
    number path string true No description

    Responses

    Status Meaning Description
    204 No Content Revoke number from member that owns fax number
    400 Bad Request No description
    500 Internal Server Error No description

    Archives

    listFaxes

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/{user_id}/archives',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/{user_id}/archives',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/{user_id}/archives',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/{user_id}/archives', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/{user_id}/archives");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/{user_id}/archives

    Get fax records

    With this API call you will be able to retrieve a collection of faxes (either sent or received or spam based on the category selected). If you want to filter your archive please provide the category parameter

    Parameters

    Parameter In Type Required Description
    user_id path string true 'self' or user id of a corporate member
    category query string false Category parameter can be one of these values: inbox, sent, spam
    after query string false Start date to get records from that date
    before query string false End date to get records before that date
    limit query integer false Limit of fax records you want to get per request

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    getFax

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/archives/{fax_id}

    Get a fax record

    Get a specific fax record details like duration, pages etc.

    Parameters

    Parameter In Type Required Description
    fax_id path string true No description

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    updateFax

    Code samples

    var headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
      method: 'put',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "is_read": true,
      "comment": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.put 'https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.put('https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    PUT /accounts/self/archives/{fax_id}

    Modify fax record

    You can modify a fax record's comment or mark it as read

    Body parameter

    {
      "is_read": true,
      "comment": "string"
    }
    

    Parameters

    Parameter In Type Required Description
    fax_id path string true No description
    body body FaxModification false Request object for making changes in a fax object
    » is_read body boolean false No description
    » comment body string false No description

    Responses

    Status Meaning Description
    204 No Content fax updated successfully
    400 Bad Request No description
    500 Internal Server Error No description

    deleteFax

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
      method: 'delete',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.delete 'https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.delete('https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/archives/{fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    DELETE /accounts/self/archives/{fax_id}

    Delete a fax

    Delete a specific fax record by providing its id

    Parameters

    Parameter In Type Required Description
    fax_id path string true No description

    Example responses

    {}
    

    Responses

    Status Meaning Description
    204 No Content 204 will be return on successful CDR modification
    400 Bad Request No description
    500 Internal Server Error No description

    Status Code 204

    {}

    Files

    uploadFile

    Code samples

    var headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/files',
      method: 'post',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "fax_file": "string"
    }';
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/files',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'multipart/form-data',
      'Accept' => 'application/json'
    }
    
    result = RestClient.post 'https://restapi.fax.plus/v1/accounts/self/files',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'multipart/form-data',
      'Accept': 'application/json'
    }
    
    r = requests.post('https://restapi.fax.plus/v1/accounts/self/files', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/files");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    POST /accounts/self/files

    upload a file

    Before sending a fax you need to upload your files using this API. In order to upload your fax file, you have to send a multipart/form-data request with your file. If the upload was successful you would receive a file_path which you can use to send your fax.

    Body parameter

    fax_file: string
    
    

    Parameters

    Parameter In Type Required Description
    format query string false can be 'pdf' or 'tiff'
    body body File false A file to be uploaded
    » fax_file body string(binary) false No description

    Responses

    Status Meaning Description
    201 Created No description
    400 Bad Request No description
    500 Internal Server Error No description

    getFile

    Code samples

    var headers = {
      'Accept':'application/pdf'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/files/{fax_id}',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/pdf'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/files/{fax_id}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/pdf'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/files/{fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/pdf'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/files/{fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/files/{fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/files/{fax_id}

    get a file

    Get your fax archive file using it's id.

    Parameters

    Parameter In Type Required Description
    fax_id path string true No description
    format query string false can be 'pdf' or 'tiff'

    Example responses

    Responses

    Status Meaning Description
    200 OK CDR file content in corresponding mimetype e.g. application/pdf
    400 Bad Request No description
    500 Internal Server Error No description

    Outbox

    listOutboxFaxes

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/outbox',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/outbox',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/outbox',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/outbox', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/outbox");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/outbox

    Get outbox records

    Get outbox fax records information

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    sendFax

    Code samples

    var headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/outbox',
      method: 'post',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "to": [
        "string"
      ],
      "from": "string",
      "files": [
        "string"
      ],
      "options": {
        "retry": {
          "delay": 0,
          "count": 0
        },
        "enhancement": true
      },
      "send_time": "string",
      "comment": {
        "text": "string",
        "tags": [
          "string"
        ]
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/outbox',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.post 'https://restapi.fax.plus/v1/accounts/self/outbox',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.post('https://restapi.fax.plus/v1/accounts/self/outbox', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/outbox");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    POST /accounts/self/outbox

    Send a fax

    With this API call you will be able to send a fax (one or more files) to one or more destinations. If you are a corporate member and you don't have a fax number set your from parameter to NO_NUMBER

    Body parameter

    {
      "to": [
        "string"
      ],
      "from": "string",
      "files": [
        "string"
      ],
      "options": {
        "retry": {
          "delay": 0,
          "count": 0
        },
        "enhancement": true
      },
      "send_time": "string",
      "comment": {
        "text": "string",
        "tags": [
          "string"
        ]
      }
    }
    

    Parameters

    Parameter In Type Required Description
    body body Outbox false Request object to make a new outbox object
    » from body string false No description
    » options body object false No description
    »» retry body object false No description
    »»» delay body integer false No description
    »»» count body integer false No description
    »» enhancement body boolean false No description
    » send_time body string false No description
    » comment body object false No description
    »» text body string false No description
    »» tags body [string] false No description
    » to body [string] false No description
    » files body [string] false No description

    Responses

    Status Meaning Description
    201 Created Outbox fax has been created successfully
    400 Bad Request No description
    500 Internal Server Error No description

    getOutboxFax

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
      method: 'get',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    GET /accounts/self/outbox/{outbox_fax_id}

    Get an outbox record

    Get an outbox fax record information

    Parameters

    Parameter In Type Required Description
    outbox_fax_id path string true No description

    Responses

    Status Meaning Description
    200 OK No description
    400 Bad Request No description
    500 Internal Server Error No description

    deleteOutboxFax

    Code samples

    var headers = {
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
      method: 'delete',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.delete 'https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.delete('https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    DELETE /accounts/self/outbox/{outbox_fax_id}

    Delete a fax from outbox

    Delete a fax that is being sent and is still in your outbox

    Parameters

    Parameter In Type Required Description
    outbox_fax_id path string true No description

    Example responses

    {}
    

    Responses

    Status Meaning Description
    204 No Content 204 will be returned on successful fax deletion from outbox
    400 Bad Request No description
    500 Internal Server Error No description

    Status Code 204

    {}

    updateOutboxFax

    Code samples

    var headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    $.ajax({
      url: 'https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
      method: 'put',
    
      headers: headers,
      success: function(data) {
        console.log(JSON.stringify(data));
      }
    })
    
    const request = require('node-fetch');
    const inputBody = '{
      "comment": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    
    };
    
    fetch('https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.put 'https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.put('https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}', params={
    
    }, headers = headers)
    
    print r.json()
    
    URL obj = new URL("https://restapi.fax.plus/v1/accounts/self/outbox/{outbox_fax_id}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    

    PUT /accounts/self/outbox/{outbox_fax_id}

    Modify a fax record in outbox

    Modify outbox record's comment

    Body parameter

    {
      "comment": "string"
    }
    

    Parameters

    Parameter In Type Required Description
    outbox_fax_id path string true No description
    body body OutboxModification false Request object for making changes in an outbox object
    » comment body string false No description

    Example responses

    {}
    

    Responses

    Status Meaning Description
    204 No Content 204 will be returned on successful fax modification in outbox
    400 Bad Request No description
    500 Internal Server Error No description

    Status Code 204

    {}

    Schemas

    Outbox

    {
      "files": [
        "/transient-29362c0c-eeff-45c1-9f4e-4ef5865a41df"
      ],
      "src": "+16699990000",
      "retry": {
        "count": 0,
        "delay": 0
      },
      "should_enhance": false,
      "uid": "53a1afb8585345a39033857e1f36bf8d",
      "designated_src": "",
      "ip": "8.8.8.8",
      "page_count": 0,
      "comment": {
        "text": "",
        "tags": []
      },
      "id": "13a4afb0585345639733857e8f36df8d",
      "file_changes": [],
      "to": [
        "+16699990000"
      ],
      "status": "submitted",
      "status_changes": [
        {
          "status": "submitted",
          "at": "2017-09-24 06:43:04"
        }
      ],
      "contact_name": "",
      "send_time": "2017-09-24 06:43:04 +0000",
      "initiated_from": {
        "type": "",
        "from_id": ""
      },
      "submit_time": "2017-09-24 06:43:04 +0000",
      "last_updated_status_time": "2017-09-24 06:43:04",
      "options": {},
      "extra_info": {}
    } 
    

    Properties

    Name Type Required Description
    src string false No description
    retry object false No description
    » count integer false No description
    » delay integer false No description
    should_enhance boolean false No description
    uid string false No description
    designated_src string false No description
    ip string false No description
    page_count integer false No description
    comment object false No description
    » text string false No description
    » tags [string] false No description
    id string false No description
    status string false No description
    contact_name string false No description
    send_time string false No description
    initiated_from object false No description
    » type string false No description
    » from_id string false No description
    submit_time string false No description
    last_updated_status_time string false No description
    options object false No description
    extra_info object false No description
    files [string] false No description
    file_changes [Unknown] false No description
    » at string false No description
    » files [Unknown] false No description
    »» file_name string false No description
    »» mime_type string false No description
    »» size number false No description
    to [string] false No description
    status_changes [Unknown] false No description
    » status string false No description
    » at string false No description

    Fax

    {
      "comment": "",
      "cost": 0,
      "duration": 0,
      "from": "+16699990000",
      "id": "59be3eb357c78d0501081bd7",
      "is_read": false,
      "last_update": "2017-09-17 09:21:55",
      "owner_id": "7724157c0974440293e45877c57f0703",
      "to": "+16699990000",
      "cost_details": {
        "multiplier": 1,
        "notification_cost": 1
      },
      "description": "File Not Found",
      "file": "/transient-2937237320213-213-21323",
      "file_name": "fax-to-16699990000",
      "header": "",
      "max_retry": {
        "count": 0,
        "delay": 0
      },
      "pages": 0,
      "retry_delay": 0,
      "scheduled_time": "2017-09-17 09:21:54 +0000",
      "is_spam": false,
      "status": "failed_file_not_found",
      "submit_time": "2017-09-17 09:21:54 +0000",
      "direction": "outgoing",
      "start_time": "2017-09-17 09:21:54"
    } 
    

    Properties

    Name Type Required Description
    id string false No description
    comment string false No description
    cost integer false No description
    direction string false No description
    from string false No description
    status string false No description
    scheduled_time string false No description
    description string false No description
    is_spam boolean false No description
    submit_time string false No description
    cost_details object false No description
    » notification_cost number false No description
    » multiplier number false No description
    header string false No description
    file string false No description
    file_name string false No description
    retry_delay integer false No description
    max_retry integer false No description
    pages integer false No description
    start_time string false No description
    to string false No description
    duration integer false No description
    last_update string false No description
    is_read boolean false No description
    owner_id string false No description

    Number

    {
      "acquired_date": "2017-07-31 09:20:06",
      "assigned_to": "7724157c0974440293e45877c57f0703",
      "expiration_date": null,
      "id": "e6e68ef87f0b8768ebacdb218994bfe7",
      "is_canceled": false,
      "notifications": [
        {
          "email": true,
          "push_notification": true,
          "type": "voicemail"
        },
        {
          "email": true,
          "push_notification": true,
          "type": "receive_fax"
        },
        {
          "email": true,
          "push_notification": true,
          "type": "announcement"
        },
        {
          "email": true,
          "push_notification": true,
          "type": "callforward"
        }
      ],
      "number": "+16699990000",
      "owner_id": "7724157c0974440293e45877c57f0703",
      "status": "active"
    } 
    

    Properties

    Name Type Required Description
    id string false No description
    status string false Status of your fax phone number e.g. active, inactive.
    is_canceled boolean false No description
    expiration_date string false No description
    number string false No description
    acquired_date string false No description
    assigned_to object false No description
    owner_id string false No description
    notifications [Unknown] false No description
    » type string false No description
    » email boolean false No description
    » push_notification boolean false No description

    Account

    {
      "account_data": {
        "company_name": "Company name",
        "default_file_type": "pdf",
        "save_history": true
      },
      "account_type": "corporate_admin",
      "creation_date": "2017-05-06 05:22:21",
      "email": "[email protected]",
      "last_password_modification_date": "2017-05-06 05:22:21",
      "lastname": "Smith",
      "member_of": {},
      "notifications": {
        "black_list": {
          "uids": []
        },
        "settings": {
          "email": {
            "addresses": [
              "[email protected]"
            ],
            "low_credit": true,
            "new_feature": true,
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          },
          "language": "fa",
          "push_notifications": {
            "low_credit": true,
            "new_feature": true,
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          },
          "sms": {
            "low_credit": true,
            "new_feature": true,
            "numbers": [
              "+16699990000"
            ],
            "receive_fax": true,
            "send_fax": true,
            "voicemail": true
          }
        }
      },
      "phone": "+16699990000",
      "profile_image": "",
      "settings": {
        "caller_id_name": "FAX.PLUS",
        "send_fax": {
          "options": {},
          "retry": {
            "count": 0,
            "delay": 0
          },
          "should_enhance": true
        }
      },
      "status": "active",
      "uid": "7724157c0974440293e45877c57f0703"
    } 
    

    Properties

    Name Type Required Description
    status string false Your account status which could be active, inactive etc
    account_type string false Account type which could be corporate_admin, individual, etc
    lastname string false Your last name
    profile_image string false Profile image path
    creation_date string false creation date in UTC in the format of YYYY-MM-DD
    phone string false Your account phone number
    last_password_modification_date string false The date in which you have changed your password
    uid string false user id of current user
    account_data object false No description
    » default_file_type string false Default file type that fax server uses to send the fax
    » save_history boolean false Save fax CDRs in inbox status
    » company_name string false Your company name in case you are corporate admin
    name string false your first name
    settings object false No description
    » caller_id_name string false Account caller id name
    » send_fax object false No description
    »» retry object false No description
    »»» count integer false No description
    »»» delay integer false No description
    » should_enhance boolean false No description
    » options object false No description
    email string false Account email address
    notifications object false No description
    member_of [string] false No description

    File

    {
      "path": "/storage/2937237320213-213-21323"
    } 
    

    Properties

    Name Type Required Description
    path string false Path of newly uploaded file

    MemberDetail

    {
      "quota": 400,
      "role": "Sales Manager"
    } 
    

    Properties

    Name Type Required Description
    quota integer false quota of member (number of pages member can send per month)
    role string false Role of member in your company

    Error

    {} 
    

    Properties

    Name Type Required Description
    error string false No description
    description string false No description