Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

To create a new object. On success, the method always returns the internal object id of the newly created objectParameters:
{

Code Block
languagejs
titleParameters
{
    "attrs":{list of attribute value pairs}

...


}


Code Block
languagejs
titleResponse

...

{

...


    "result":{"id":the id of the newly created object}

...


}


Examples:
Method:/user/createParameters:
{

Code Block
languagejs
titleParameters
{
    "attrs":

...


    {
        "domain.id":2,

...


         "name":"John Smith",

...


         "email":"js@acme.com"

...


    }
}


Code Block
languagejs
titleResponse
{
    "error":0,
    "result":{"id":

...

"1234567890abcd"}

...


}



Method:/usertoken/createParameters:
{

Code Block
languagejs
titleParameters
{
    "attrs":

...


    {
        "user.id":

...

"user id",
        "product.id":"product id"
    }
}


Code Block
languagejs
titleResponse
{
    "error":0,
    "result":{"id":

...

"1234567890abcd"}
}


Anchor
_Toc341972292
_Toc341972292
/
Anchor
_Toc315972316
_Toc315972316
object/delete

To delete an object. The request parameter MUST be the internal id of the object to be deleted. On success the method returns error 0.
Parameters: {"id":the id of the object to be deleted}
Response: {"error":0}
Example:
Method:/user/deleteParameters: {

Code Block
languagejs
titleParameters
{
    "id":

...

"1234567890abcd"
}


Code Block
languagejs
titleResponse
{
    "error":0
}


Anchor
_Toc341972293
_Toc341972293
/
Anchor
_Toc315972317
_Toc315972317
object/get

...

To set the object's attributes. The request must provide a list of attributes and values that are to be set. On success the method returns error 0.

Code Block
languagejs
titleParameters

...

{

...


    "id":"the id of the object to be edited",

...


    "attrs":{list of attribute pairs}
}

...


Code Block
languagejs
titleResponse

...

{
    "error":0
}


Example:
Method:/user/setParameters:
{

Code Block
languagejs
titleParameters
{
    "id":

...

"user id",
    "attrs":

...


    {
        "name":"John Smith",

...


        "email":"js@acme.com"

...


    }
}


Code Block
languagejs
titleResponse
{
    "error":0
}

Anchor
_Toc341972295
_Toc341972295
/
Anchor
_Toc315972319
_Toc315972319
object/search

...

  • the name of the attribute
  • the operator
  • the value to be matched

...


For

...

example:

...

["id","=",

...

2

...

]

...

Matching

...

operators

...

supported:

...

String operators:
OperatorFunction
=equals to
>>starts with
<<ends with
~=like
likelike


Code Block
languagejs
titleExample
{
    "match":[
          operators:
 =  equals to
 like  like
 examples:
\["firstName","=", "john"\]
\,
         ["email","like", "j%acme.com"\]
    ]
}
Integer operators:
OperatorFunction
=equals to
>=greater than or equals to
<=less than or equals to
>greater than
<less than


Code Block
languagejs
titleExample
{
    "match":[
         ["failCount",">", "3"]
    ]
}


Date operators:
OperatorFunction
=equals to
>after
<before


Code Block
languagejs
titleExample
{
    "match":[
         ["lastChangePassword", "<", "2019 operators:
 =  equals to
 <  less than
 >  greater than
examples:
\["age","=", 45\] 
\["weight","<", 110\]
\["size",">", 42\]
Date operators:
 =  equals to
 <  before
 >  after
examples:
\["lastModified","=", "2009-08-20T00:00:00Z"\]
\["created","<", "2009-01-12T12:00:00Z"\]
\["deleted",">", "2008-08-21T08:00:00Z"\]
 Notes: all date value should be in ISO 8601 format.
Parameters: 
\{
 "match":\{    ]
}

Notes: all date value should be in ISO 8601 format.


Request parameters and response:


Code Block
languagejs
titleParameters
{
    "match": [list of attributes to be matched\}]
    "return":\[array of attributes to be returned\]
    "sort": attribute to be sorted by
    "order":"asc" | "desc"
    "max": the maximum numbers of records to return
    "offset": the offset
\}
Response: \{}


Code Block
languagejs
titleResponse
{
    "error": 0,
    "result":\[array of list of attributes\objects]\
}
+Example+


Example:

Method:/user/search

Code Block
languagejs
titleParameters

Parameters: 
\{
    "match":
\ [
        \["domain.id", "=", 2\ "domain id"],
\        ["lastnamelastName", "=", "smith"\],
\        ["email", "like~=", "[%@acme.com|mailto:%25@acme.com]"\],
\    ],
    "return":\["firstnamefirstName", "lastnamelastName", "email", "phonetelephone"\],
    "sort":"lastnamelastName",
    "order":"asc",
    "max": 20,
    "offset": 10
\}
Response: 
\}


Code Block
languagejs
titleResponse
{
    "error": 0,
    "result":
\    {
        "total": 20,
        "rows":
\[
 \{
  "firstname        [
             {
                 "firstName":"John",
     "lastname            "lastName":"Smith",
                 "email":"js@acme.com",
                 "phonetelephone":"447974321234",
\             },
 \             {
                 "firstname":"David",
                 "lastname":"Smith",
                 "email":"ds@acme.com",
  "phone               "telephone":"447974234975",
\}
\]
\}
\}
\\
// a failed response
\{
"error":101,
"message":"user not found"
\}
-------------------------------------------------------------------
             },
             ...
        ]
    }
}


Method:/token/search

Code Block
languagejs
titleParameters
{
   
Parameters: 
\{
 "match":
\ [
        \["userproduct.id", "=", 2\]
\["category", "=", "OTP"\]
\"product id"]
    ],
    "return":\["serial"\],
    "sort":\["serial"\]
\}
Response: 
\{
",
    "order":"asc",
    "max": 20,
    "offset": 10
}


Code Block
languagejs
titleResponse
{
    "error": 0,
    "result":
\    {
        "total":4 20,
        "rows":
\        [
 \             {"serial":"77004155"\},
 \              {"serial":"77004245"\},
 \             {"serial":"77004266"\},
 \              {"serial":"77004321"\},
\]
\}
\}
 \\              ...
        ]
    }
}