Sample code for 30+ languages & platforms
Classic ASP

GeoOp - Create a New User

See more GeoOp Examples

Create a new GeoOp user.

Chilkat Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

'  This example assumes the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

'  This example also assumes an OAuth2 access token was previously fetched.
'  and saved in a JSON file.  

'  First get our previously obtained access token.
'  {"access_token":"e6dqdG....mzjpT04w==","token_type":"Bearer","expires_in":2592000,"owner_id":999236}
set jsonToken = Server.CreateObject("Chilkat.JsonObject")
success = jsonToken.LoadFile("qa_data/tokens/geoop.json")

'  This example assumes we previously obtained an access token
set oauth2 = Server.CreateObject("Chilkat.OAuth2")
oauth2.AccessToken = jsonToken.StringOf("access_token")

set rest = Server.CreateObject("Chilkat.Rest")

'  Connect to GeoOp..
'  Note: The same REST object, once connected, can be used for many requests.
'  The bAutoReconnect argument allows it to automatically reconnect as required for any subsequent request.

bAutoReconnect = 1
success = rest.Connect("api.geoop.com",443,1,bAutoReconnect)
If (success <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode( rest.LastErrorText) & "</pre>"
    Response.End
End If

'  Provide the authentication credentials (i.e. the access token)
success = rest.SetAuthOAuth2(oauth2)

'  Set the X-Version header.
success = rest.AddHeader("X-Version","1.0")

'  To create a new user, we must build and send the following JSON:
'  {
'      "users": [
'          {
'              "account": {
'                  "id": 39409    <--- This account ID must be one that already exists.
'              },
'              "firstName": "Geoff",
'              "lastName": "Wirtz",
'              "companyName": "Sample Company",
'              "phone": "+12349282001",
'              "mobile": "+12349332744",
'              "email": "gwirtz@example2.com",
'              "login": "gwirtz_sample2",
'              "newPassword": "pa$$wordz",
'              "newPasswordConfirm": "pa$$wordz"
'          }
'      ]
'  }

set jsonUser = Server.CreateObject("Chilkat.JsonObject")
success = jsonUser.UpdateInt("users[0].account.id",39409)
success = jsonUser.UpdateString("users[0].firstName","Geoff")
success = jsonUser.UpdateString("users[0].lastName","Wirtz")
success = jsonUser.UpdateString("users[0].companyName","Sample Company")
success = jsonUser.UpdateString("users[0].phone","+12349282001")
success = jsonUser.UpdateString("users[0].mobile","+12349332744")
success = jsonUser.UpdateString("users[0].email","gwirtz@example2.com")
success = jsonUser.UpdateString("users[0].login","gwirtz_sample2")
success = jsonUser.UpdateString("users[0].newPassword","pa$$wordz")
success = jsonUser.UpdateString("users[0].newPasswordConfirm","pa$$wordz")

'  Examine the JSON we're about to send...
jsonUser.EmitCompact = 0
Response.Write "<pre>" & Server.HTMLEncode( jsonUser.Emit()) & "</pre>"

success = rest.AddHeader("Content-Type","application/json")

jsonUser.EmitCompact = 1
responseBody = rest.FullRequestString("POST","/users",jsonUser.Emit())
If (rest.LastMethodSuccess <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode( rest.LastErrorText) & "</pre>"
    Response.End
End If

'  If the response status code did not indicate success, then see what happened..
If (rest.ResponseStatusCode <> 200) Then
    Response.Write "<pre>" & Server.HTMLEncode( "Request Header: ") & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( rest.LastRequestHeader) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( "----") & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( "Response StatusCode = " & rest.ResponseStatusCode) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( "Response StatusLine: " & rest.ResponseStatusText) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( "Response Header:") & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( rest.ResponseHeader) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( responseBody) & "</pre>"
    Response.End
End If

set json = Server.CreateObject("Chilkat.JsonObject")
json.EmitCompact = 0
success = json.Load(responseBody)
'  Show the full JSON response..
Response.Write "<pre>" & Server.HTMLEncode( json.Emit()) & "</pre>"

'  The success JSON looks like this:
'  {
'    "result": "success",
'    "users": [
'      {
'        "id": 984244,
'        "firstName": "Geoff",
'        "lastName": "Wirtz",
'        "companyName": "Sample Company",
'        "email": "gwirtz@example2.com",
'        "phone": "+12349282001",
'        "mobile": "+12349332744",
'        "hourlyRate": 0,
'        "active": 1,
'        "deleted": false,
'        "colour": "#000000",
'        "created": "2016-10-26T18:03:59+00:00",
'        "modified": "2016-10-26T18:03:59+00:00",
'        "isAssignable": true,
'        "avatarUrl": "https:\/\/round-lake.dustinice.workers.dev:443\/https\/www.geoop.com\/images\/mobithumb_984244.jpg",
'        "role": {
'          "id": 2
'        },
'        "account": {
'          "id": 39409
'        },
'        "status": {}
'      }
'    ],
'    "metadata": {
'      "receivedItemsCount": 1,
'      "validItems": [
'        0
'      ],
'      "invalidItems": [
'      ]
'    }
'  }
'  

%>
</body>
</html>