HELP & Documents

[...]




Date: 2017.6.13        Author: Admin

Search index: (title and article description search)

No record was found!

Document storage API


Document Storage API


RESTful API

Data is stored into a webdo.com user account CLOUD storage.
Storage location: Applications/<app folder>/<folder>/data/<data location/table>.

This is a KEY based document storage, we will refer to documents in the collection as records and the document KEY as ID. While it can perform QUERY, it is not wise to overuse on large collections because there are no index files at this time.

Can perform next operations:

                CREATE, READ, UPDATE, DELETE known as CRUD

It offers up to one GB of storage per table and allows very fast read access for virtually unlimited connections. Write operations minimum speed is 5/second.
Charges are per 10000 API requests, see your control panel billing information.

Requirements:

- register one application with WEBDO.COM

        - code
        - folder
        - additional info

-  user authorization ( check WEBDO.COM Open Authorization )

All operations requires an authorization header like:

Authorization: Bearer <token>

CREATE:

Headers:

Authorization: Bearer <token>

Method: POST

URL: https://q-ube.com:45567/dbs/

Data:

         { "appkey":<app key>,
           "basefolder":<application folder>,
           "folder":<folder name>,
           "table":<table name>,
           "data":[<records array>]
        }   

"records array" an JSON array of records to be inserted into the table.
Restricted fields: id (id field should be created and maintained by the API services)

"basefolder" can be "m" or "l", difference relates to where the data is stored on app key master drive or local on  authenticated user drive. It depends on your web application requirements to chose your data storage location.

Set an additional parameter to avoid returning the data back, useful for data set import when CREATE details are not required client side: data.dataimport = true

Response:

JSON object:

{
    msg:<message>,
    response:{
        allok:<true/false>,
        data:[ok data list],
        rejected:[rejected records],
        nores:[NO response list, file is in use - try again later !]
}

  1. { // sample one insert record ...
  2.    "msg": "write data",
  3.    "response":
  4.    {
  5.        "allok": true,
  6.        "data":
  7.        [
  8.            {
  9.                "start": "is working ...",
  10.                "id": "aa5",
  11.                "_xt": "2017-06-13T09:14:21.540Z",
  12.                "_action": "create"
  13.            }
  14.        ],
  15.        "rejected":
  16.        [
  17.        ],
  18.        "nores":
  19.        [
  20.        ]
  21.    }
  22. }



UPDATE:

Same as CREATE, the difference is that each record in records array you need to update should have a defined <id> field and one additional field "_action" having value "update".
You CAN NOT update specific fields/information on one record, in order to update you should send the entire record.

DELETE:

Same as CREATE, the difference is that each record in records array you need to delete should have a defined <id> field and one additional field "_action" having value "delete".

CREATE, UPDATE, DELETE operations can be sent together into one <records array> respecting previous defined restrictions.

READ:

Headers:

Authorization: Bearer <token>

Method: POST

URL: https://q-ube.com:45567/getdbs/

Data:

         { "appkey":<app key>,
           "basefolder":<application folder>,
           "folder":<folder name>,
           "table":<table name>,
           "params":{<params object>}
        }  

params object:
- action: action

action is one of next ["query", "getlast", "getlastfrom", "getnew", "info"]

additional params object items:
- last (used with action = "getlast" or action="getlastfrom", numeric)
- lastfrom (used with action = "getlastfrom", string - is the record "id" you get records from)
- lastrecord (used with action = "getnew", string - is the record "id" that limits the new records set)
- filters (used with action="query", array of objects:
                     [ {"field":<fieldname>,"value":<value>},...]

- simple (true/false ; used with action="info", use when information related table parts (shards) is not required; the response is faster (missing information relates to records number/shard).
- shards (used with action = "query", query only one shard - you may send a request for each shard being able to have a faster response using a parallel loading of requested data. (EX: use info to have a shards list, next query each shard for your data, for big data-sets will be 10 times faster).


SAMPLE:
params: {
        action:"getlast",
        last:100
}


will return last 100 records sorted descending by "id/creation date"

Response:

{

    request:{<request data>},
    records:[<records list>],
    errors:[<errors list>],
    total: <cont of records>,
    lastrecords: <last record id>

}

You may use the FireFox add-on RESTClient to test the services in place.
















Loading data

Loading WordBricks ...

| 1.1.1. Welcome| 1.1.2. Register a new account| 1.1.3. Start| 1.1.4. Technical support| 1.2.1. New website| 1.2.2. New page| 1.2.3. Sections / Page BLOCKS| 1.2.4. Settings| 1.2.5. Save / Backup / Restore| 1.2.6. Background| 1.2.7. My pages| 1.2.8. Page settings| 1.2.9. Website header| 1.2.10. Website menu| 1.2.11. Publish| 1.2.12. Compatibility| 1.2.13. Specials blocks| 1.2.14. DATABLOCKS| 1.2.15. Contacts Form| 1.2.16. Numbers Shuffle - Game| 1.2.17. ChatBox| 2.1.1. WEB hosting| 2.2.1. Hosting plans| 2.3.1. Domain Names| 2.3.2. Register a new domain name| 2.3.3. Domain name management| 2.3.4. Add a SSL certificate| 2.3.5. Create a SSL certificate| 2.3.6. Domain Name Redirects| 2.4.1. SEO informations| 3.1.1. DRIVE| 3.2.1. Files storage| 3.2.2. API drive access| 3.2.3. Safe share files| 3.3.1. WebDO IDE| 4.1.1. Email| 4.1.2. Email Services Names| 5.1.1. Databases| 5.1.2. API key| 5.2.1. Micro data| 5.3.1. Datasets (test fake data)| 6.1.1. We use SOA| 6.2.1. Authorization| 6.2.2. File access| 6.2.3. SendMail| 6.2.4. QR Code| 6.2.5. Document storage API| 6.2.6. MicroData API| 6.2.7. SQL API| 6.2.8. IP API| 6.2.9. DRIVE API| 6.2.10. Link Redirects API| 7.1.2. WebDo CLOUD| 7.1.3. Services Domains| 8.1.1. Payment| 8.1.2. European VAT| 8.2.1. Privacy policies| 8.2.2. Refund policies| 8.2.3. Change web hosting plan| 8.2.4. Minimum order value| 9.1.1. Terms and conditions| 10.1.2. About us| 10.1.2. | 11.1.3. Newsletter Application| 11.2.1. Dashboard| 11.2.2. Subscribers| 11.2.3. Campains| 11.2.4. Email Builder| 11.2.5. Forms| 11.2.6. Forms Builder| 11.2.7. Subscribers Management| 11.2.8. Integrate a custom subscription form using webdo website builder| 12.1.1. Survey Application| 12.2.1. Dashboard| 12.2.2. Add/Edit survey| 12.2.3. Settings| 12.2.4. Campaigns| 12.2.5. Reports| 12.2.6. Survey preview| 12.2.7. Page jumps| 12.2.8. Question types| 13.1.1. E-Detailing Application| 13.2.1. Dashboard| 13.2.2. Presentations| 13.2.3. Campaigns| 13.2.4. Reports| 13.2.5. Templates|