GET Tables

/tables

Method: GET
Description: Returns the list of available tables
Parameters: None
Result: Array of tables names

GET Table Name

/tables/<name>

Method: GET
Description: Returns the description of a table
Parameters: None
Result: Object describing the table

GET Table Rows

/tables/<name>/rows

Method: GET
Description: Returns rows from the table
Parameters: URL, optional – Select criterion, if absent, ALL is assumed.
Result: Rows from the table

Example

Retrieve all records from table Customers that were submitted today:
Method:  GET
URL:     /tables/customers/rows?q={"select":"Contact_ID, First_Name, Last_Name","where":"Date_Submitted>=GetDate()"}

Brackets and the parameters within them must be encoded. See all Special Considerations and note the required Header Parameters.

Response Example

JSON:

"Result": [{
  "Contact_ID": 112,
  "First_Name": "Jane",
  "Last_Name": "Anderson",
}]

XML:

<Caspio>
  <Row>
    <Contact_ID>112</Contact_ID>
    <First_Name>Jane</First_Name>
    <Last_Name>Anderson</Last_Name>
  </Row>
</Caspio>

POST Table Rows

/tables/<name>/rows

Method: POST
Description: Inserts a row into the table
Parameters: URL,
Body, required – {“field1″:”value1″,”field2″:”value2”}
Result: 201 Created (if successful) + Location Header contains URL to inserted row

PUT Table Rows

/tables/<name>/rows

Method: PUT
Description: Updates rows in the table. It must include a query that specifies the row(s) that should be updated.
Parameters: URL, required – Update criterion,
Body, required – {“field1″:”value1″,”field2″:”value2”}
Result: Affected rows count

Example

Update all Customers where Name equals Mike, set Status to “Updated”:

Method:  PUT
URL:     /tables/customers/rows?q={"where":"Name='Mike'"}
Body:    {"Status":"Updated"}

Brackets and the parameters within them must be encoded. See all Special Considerations and note the required Header Parameters.

DELETE Table Rows

/tables/<name>/rows

Method: DELETE
Description: Deletes rows from the table
Parameters: URL, required – Delete criterion (described in Criteria section)
Result: Affected rows count

GET Table Password Fields

/tables/<name>/passwordFields

Method: GET
Description: Returns a list of table password fields
Parameters: None
Result: A list of table password fields

PUT Table Password Fields

/tables/<name>/passwordFields/<pfName>

Method: PUT
Description: Update table password field value
Parameters: URL, required – Update criterion (described in Criteria section); Body, required – {“value”:”pfValue”}
Result: Affected rows count

DELETE Table Password Fields

/tables/<name>/passwordFields/<pfName>

Method: DELETE
Description: Reset table password field value
Parameters: URL, required – Delete criterion
Result: Affected rows count

GET Table Fields

/tables/<name>/columns

Method: GET
Description: Returns list of fields from the table
Parameters: None
Result: List of fields

POST Table Fields

/tables/<name>/columns

Method: POST
Description: Adds a field into the table
Parameters: URL,
Body, required –

{
“Name”:”columnName”,                   (required)
“Type”:”columnType”,                       (required)
“Unique”:(true/false),                        (optional, default value = false)
“Description”:”description”,             (optional, default value = “”)
“DisplayOrder”:(integer),                  (optional, default value = 0 (last))
“Label”:”label”,                                    (optional, default value = “”)
“UniqueAllowNulls”:(true/false),    (optional, only if UNIQUE set to TRUE, default value = false)
“OnInsert”:(true/false),                     (optional, only for TIMESTAMP, default value = false)
“OnUpdate”:(true/false),                   (optional, only for TIMESTAMP, default value = false)
“TimeZone”:”timeZone”                    (optional, only for TIMESTAMP, default value = “”)
}

Result: 201 Created (if successful) + Location Header contains URL to inserted column

GET Table Field

/tables/<name>/columns/<columnName>

Method: GET
Description: Returns the field information
Parameters: None
Result: Field’s information

Name – Field name
Type – DataType
Unique – True/False – Indicates if the field is unique
Description – Field’s description
DisplayOrder – Display order of the field
Label – Field’s label
UniqueAllowNulls – True/False – Indicates if Null is allowed in the unique field
OnInsert – True/False – Indicates if TIMESTAMP is enabled on insert
OnUpdate – True/False – Indicates if TIMESTAMP is enabled on update
TimeZone – Time zone of the TIMESTAMP

PUT Table Field

/tables/<name>/columns/<columnName>

Method: PUT
Description: Updates a field in the table
Parameters: URL,
Body, requires at lease one optional parameter –
{
“NewName”:”columnName”,                   (optional)
“NewType”:”columnType”,                       (optional)
“NewUnique”:(true/false),                        (optional)
“NewDescription”:”description”,             (optional)
“NewDisplayOrder”:(integer),                  (optional)
“NewLabel”:”label”,                                    (optional)
“NewUniqueAllowNulls”:(true/false),    (optional, only if UNIQUE set to TRUE)
“NewOnInsert”:(true/false),                     (optional, only for TIMESTAMP)
“NewOnUpdate”:(true/false),                   (optional, only for TIMESTAMP)
“NewTimeZone”:”timeZone”                    (optional, only for TIMESTAMP)
}
Result: 200 OK if successful

DELETE Table Field

/tables/<name>/columns/<columnName>

Method: DELETE
Description: Deletes a field from the table
Parameters: None
Result: 200 OK if successful