Vridlo/api/vridlo.users

vridlo.user.index
It allows accessing to a list of users, which are presented in the system. Do not poll this method more than once an hour. Added into API v1.0.

Path
/v1/users

GET
Returns a list of users, which are presented in the system. Do not poll this method more than once an hour. Added into API v1.0.

Authentication
This method requires NO authentication.

Arguments
NOTE: Arguments can be provided as arguments along with headers fields.

Number of items to return per page. If this argument is omitted, it defaults to 10. The maximum allowed value is 50. The page of results to return. If this argument is omitted, it defaults to 1. Name array for the user. It can include first name, last name, nickname, or title. Defines permissions for the account, permissions include the admin, or any other write permission to a model. Descriptions array of the user, which defined as array of Lorems. Recitals array for the user or group, it defines all of user or group logins, email, jabber addresses etc.
 * per_page is natural optional
 * page is natural optional
 * names is Name array mandatory
 * permissions is Permission array mandatory
 * descriptions is Lorem array optional
 * recitals is Recital array mandatory

Example Response
[  {     "id": "1", "sign_in_count": "2", "current_sign_in_at": "10.11.1970 10:10:10", "last_sign_in_at": "10.10.1970 10:10:10", "confirmed": true, "description": "Info user", "names": [ {          "kind": "firstname", "text": "User", "icu_locale": "en_US", },       {           "kind": "paternal", "text": "Batkovicz", "icu_locale": "en_US", },       {           "kind": "lastname", "text": "Batkov", "icu_locale": "en_US", },       {           "kind": "nickname", "text": "Bublo", "icu_locale": "en_US", }    ],     "recitals": [ {         "kind": "email", "address": "user@gmail.com", "foremost": false },      {          "kind": "email", "address": "user@altlinux.org", "foremost": true },      {          "kind": "login", "address": "user", "foremost": false },      {          "kind": "jabber", "address": "user@jabber.ru", "foremost": false },      {          "kind": "website", "address": "http://user.me", "foremost": false },      {          "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },         },          "foremost": false }    ]   } ]

Return Codes
The resource list is accessible. Returned data responds to the current state of the resource list, and reading the list is finished.
 * 200 (OK)

The resource list is accessible. Returned data responds to the current state of the resource list, and reading the list is NOT finished yet.
 * 206 (Partial Content)

The resource list is accessible. But data can't be returned since range provided don't match the list boundaries.
 * 416 (Range Not Satisfiable)

SSL is required to access the Vridlo API.
 * 422.3 (SSL is required)

The requested service is temporarily unavailable.
 * 500 (Service currently unavailable)

vridlo.user.slug
This allows accessing to the specified user record by URI-parameter. Added into API v1.0.

Path
/v1/users/ .json

POST
Creates the user specified by URI-parameter using the set of properties passed as form data or get parameter array, and returns state of the created record as JSON.

Authentication
This method requires write authentication with write permission token to user model.

Arguments
Name array for the user. It can include first name, last name, nickname, or title. Defines permissions for the account, permissions include the admin, or any other write permission to a model. Descriptions array of the user, which defined as array of Lorems. Recitals array for the user or group, it defines all of user or group logins, email, jabber addresses etc.
 * names is Name array mandatory
 * permissions is Permission array mandatory
 * descriptions is Lorem array optional
 * recitals is Recital array mandatory

Sample request
{  "description": "Info user", "names": [ {       "kind": "firstname" "text": "User" },    {        "kind": "paternal" "text": "Batkovič" },    {        "kind": "lastname" "text": "Batkovič" },    {        "kind": "nickname" "text": "Bublo" }  ],   "recitals": [ {      "kind": "email", "address": "user@gmail.com", "foremost": false },   {       "kind": "email", "address": "user@altlinux.org", "foremost": true },   {       "kind": "login", "address": "user", "foremost": false },   {       "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },      },       "foremost": false }  ] }

Example Response
Good response with created record:

{  "sign_in_count": 2, "current_sign_in_at": "", "last_sign_in_at": "", "confirmed": false, "description": "Info user", "names": [ {        "kind": "firstname", "text": "User", "icu_locale": "en_US", },     {         "kind": "paternal", "text": "Batkovicz", "icu_locale": "en_US", },     {         "kind": "lastname", "text": "Batkov", "icu_locale": "en_US", },     {         "kind": "nickname", "text": "Bublo", "icu_locale": "en_US", }  ],   "recitals": [ {       "kind": "email", "address": "user@gmail.com", "foremost": false },    {        "kind": "email", "address": "user@altlinux.org", "foremost": true },    {        "kind": "login", "address": "user", "foremost": false },    {        "kind": "jabber", "address": "user@jabber.ru", "foremost": false },    {        "kind": "website", "address": "http://user.me", "foremost": false },    {        "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },       },        "foremost": false }  ] }

Error response 423:

{  "error_code": 3 }

Return Codes
The resource wasn't found, and was created. Returned data responds to the current state of the resource.
 * 200 (OK)

SSL is required to access the Vridlo API.
 * 422.3 (SSL is required)

The incoming data is invalid. See details for help.
 * 422.5 (Invalid incoming data)

The record with provided slug is not found.
 * 404 (Not Found)

The Internal Server Error has occurred.
 * 500 (Internal Server Error)

GET
Gets properties of the user specified by URI-parameter, and returns then as JSON. Do not poll this method more than once an hour.

Authentication
This method requires NO authentication.

Arguments
This method requires NO arguments.

Example Response
Good response:

{  "id": "1", "sign_in_count": "2", "current_sign_in_at": "10.11.1970 10:10:10", "last_sign_in_at": "10.10.1970 10:10:10", "confirmed": true, "description": "Info user", "names": [ {        "kind": "firstname", "text": "User", "icu_locale": "en_US", },     {         "kind": "paternal", "text": "Batkovicz", "icu_locale": "en_US", },     {         "kind": "lastname", "text": "Batkov", "icu_locale": "en_US", },     {         "kind": "nickname", "text": "Bublo", "icu_locale": "en_US", }  ],   "recitals": [ {       "kind": "email", "address": "user@gmail.com", "foremost": false },    {        "kind": "email", "address": "user@altlinux.org", "foremost": true },    {        "kind": "login", "address": "user", "foremost": false },    {        "kind": "jabber", "address": "user@jabber.ru", "foremost": false },    {        "kind": "website", "address": "http://user.me", "foremost": false },    {        "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },       },        "foremost": false }  ] }

Error response 423:

{  "error_code": 3 }

Return Codes
The resource was found and is accessible. Returned data responds to the current state of the resource.
 * 200 (OK)

SSL is required to access the Vridlo API.
 * 422.3 (SSL is required)

The record with provided slug is not found.
 * 404 (Not Found)

The Internal Server Error has occurred.
 * 500 (Internal Server Error)

PUT/PATCH
Sets one or many properties of the user specified by URI-parameter, and returns updated state as JSON.

Authentication
This method requires write authentication with write permission token to user model.

Arguments
NOTE: Blank fields will be skipped, new array fields will be appended

Name array for the user. Is the user admin, the field requires superuser permission token to user model. Description of the user. Recital record array for the user.
 * names is array of Name (Optional)
 * admin is boolean (Optional)
 * description is string (Optional)
 * recitals is array of Recital (Optional)

Sample request
{  "description": "Info user", "names": [ {       "kind": "firstname" "text": "User" "icu_locale": "en_US", },    {        "kind": "paternal" "text": "Batkovicz" "icu_locale": "en_US", },    {        "kind": "lastname" "text": "Batkov" "icu_locale": "en_US", },    {        "kind": "nickname" "text": "Bublo" "icu_locale": "en_US", }  ],   "recitals": [ {      "kind": "email", "address": "user@gmail.com", "foremost": false },   {       "kind": "email", "address": "user@altlinux.org", "foremost": true },   {       "kind": "login", "address": "user", "foremost": false },   {       "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },       },       "foremost": false }  ] }

Example Request
PUT:/v1/users/ca?name=Core_Assembler

Example Response
Good response:

{  "id": "1", "sign_in_count": "2", "current_sign_in_at": "10.11.1970 10:10:10", "last_sign_in_at": "10.10.1970 10:10:10", "confirmed": true, "description": "Info user", "names": [ {        "kind": "firstname", "text": "User", "icu_locale": "en_US", },     {         "kind": "paternal", "text": "Batkovicz", "icu_locale": "en_US", },     {         "kind": "lastname", "text": "Batkov", "icu_locale": "en_US", },     {         "kind": "nickname", "text": "Bublo", "icu_locale": "en_US", }  ],   "recitals": [ {       "kind": "email", "address": "user@gmail.com", "foremost": false },    {        "kind": "email", "address": "user@altlinux.org", "foremost": true },    {        "kind": "login", "address": "user", "foremost": false },    {        "kind": "jabber", "address": "user@jabber.ru", "foremost": false },    {        "kind": "website", "address": "http://user.me", "foremost": false },    {        "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },       },        "foremost": false }  ] }

Error response 423:

{  "error_code": 3 }

Return Codes
The resource was found and is accessible. Changes were made on the resource successfully. Returned data responds to the current state of the resource.
 * 200 (OK)

The resource was found and is accessible. But no changes were made on the resource.
 * 204 (No Content)

SSL is required to access the Vridlo API.
 * 422.3 (SSL is required)

The incoming data is invalid. See details for help.
 * 422.5 (Invalid incoming data)

The record with provided id/slug is not found.
 * 404 (Not Found)

The Internal Server Error has occurred.
 * 500 (Internal Server Error)

DELETE
Destroys the user specified by URI-parameter, and returns state of the destroyed record as JSON.

Authentication
This method requires write authentication with write permission token to user model.

Arguments
This method requires NO arguments.

Example Response
Good response returning deleted record:

{  "id": "1", "sign_in_count": "2", "current_sign_in_at": "10.11.1970 10:10:10", "last_sign_in_at": "10.10.1970 10:10:10", "confirmed": true, "description": "Info user", "names": [ {        "kind": "firstname", "text": "User", "icu_locale": "en_US", },     {         "kind": "paternal", "text": "Batkovicz", "icu_locale": "en_US", },     {         "kind": "lastname", "text": "Batkov", "icu_locale": "en_US", },     {         "kind": "nickname", "text": "Bublo", "icu_locale": "en_US", }  ],   "recitals": [ {       "kind": "email", "address": "user@gmail.com", "foremost": false },    {        "kind": "email", "address": "user@altlinux.org", "foremost": true },    {        "kind": "login", "address": "user", "foremost": false },    {        "kind": "jabber", "address": "user@jabber.ru", "foremost": false },    {        "kind": "website", "address": "http://user.me", "foremost": false },    {        "kind": "location", "address": { "x": "37.618448", "y": "55.753165", "grid": "yandex", "titles": { text: "Moskva. Kremlin. Senatskij palace", icu_locale: "en_US", },       },        "foremost": false }  ] }

Error response 423:

{  "error_code": 3 }

Return Codes
The resource was found and is accessible, and successfully destroyed. Returned data responds to the state of the destroyed resource.
 * 200 (OK)

SSL is required to access the Vridlo API.
 * 422.3 (SSL is required)

The record with provided slug is not found.
 * 404 (Not Found)

The Internal Server Error has occurred.
 * 500 (Internal Server Error)