POST datastore/schemas
From Social ID Developers
(Difference between revisions)
Renato.neves (Talk | contribs) (→JSON Parameters) |
(→Request) |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 31: | Line 31: | ||
| width="200px" | required | | width="200px" | required | ||
| field type (array, boolean, date, date_time, float, hash, integer, string, time). | | field type (array, boolean, date, date_time, float, hash, integer, string, time). | ||
+ | |- | ||
+ | ! align="left" width="160px" style="padding-left: 40px" | unique | ||
+ | | width="200px" | optional | ||
+ | | whether the field must be unique or not. Default: false | ||
+ | |- | ||
+ | ! align="left" width="160px" style="padding-left: 20px" | permissions | ||
+ | | width="200px" | optional | ||
+ | | hash with schema permissions: | ||
+ | |- | ||
+ | ! align="left" width="160px" style="padding-left: 40px" | write_protected | ||
+ | | width="200px" | optional | ||
+ | | whether the user is prohibited to write to the given schema or not. Default: false | ||
+ | |- | ||
+ | ! align="left" width="160px" style="padding-left: 40px" | read_protected | ||
+ | | width="200px" | optional | ||
+ | | whether the user is prohibited to read from the given schema or not. Default: false | ||
|} | |} | ||
== Authentication == | == Authentication == | ||
− | This API requires | + | This API requires Account authentication. See [[Authentication]]. |
== Response == | == Response == | ||
Line 69: | Line 85: | ||
"fields":[ | "fields":[ | ||
{ "name":"first_field", "type":"string" }, | { "name":"first_field", "type":"string" }, | ||
− | { "name":"second_field", "type":"integer" } | + | { "name":"second_field", "type":"integer", "unique": true }, |
− | ] | + | { "name":"third_field", "type":"date_time", "unique": false } |
− | + | ], | |
+ | "permissions": { | ||
+ | "write_protected": true, | ||
+ | "read_protected": false | ||
+ | } | ||
+ | } | ||
}' \ | }' \ | ||
-H 'Content-type: application/json' \ | -H 'Content-type: application/json' \ |
Latest revision as of 20:38, 17 September 2019
Contents |
Description
Creates a new Schema.
Resource URL
POST https://api.socialidnow.com/v1/marketing/datastore/schemas
Parameters
JSON Parameters
schema | required | a hash in the format field:value, with the necessary fields to create a schema: |
---|---|---|
name | required | schema name. |
fields | optional | an array of hashes in the format field:value, with the necessary fields to create a field: |
name | required | field name. |
type | required | field type (array, boolean, date, date_time, float, hash, integer, string, time). |
unique | optional | whether the field must be unique or not. Default: false |
permissions | optional | hash with schema permissions: |
write_protected | optional | whether the user is prohibited to write to the given schema or not. Default: false |
read_protected | optional | whether the user is prohibited to read from the given schema or not. Default: false |
Authentication
This API requires Account authentication. See Authentication.
Response
Response Status
created (201) | The schema was created successfully. |
---|---|
bad_request (400) | Some required parameter was not informed. |
unauthorized (401) | The authentication is wrong. See Authentication. |
unprocessable_entity (422) | Validation error in the field "schema". |
internal_server_error (500) | An unknown error happened. |
Examples
Request
Creates a new schema named "first_schema" with two fields, one named "first_field" with "string" type and another one named "second_field" with "integer" type.
curl -iX POST 'https://api.socialidnow.com/v1/marketing/datastore/schemas' \ -d '{ "schema": { "name":"first_schema", "fields":[ { "name":"first_field", "type":"string" }, { "name":"second_field", "type":"integer", "unique": true }, { "name":"third_field", "type":"date_time", "unique": false } ], "permissions": { "write_protected": true, "read_protected": false } } }' \ -H 'Content-type: application/json' \ --user 138:e8b9ca24f1b590af67e6271297d6e1f7226625d61c5b5daa1b2f215464e292cf
Response
Response Headers
HTTP/1.1 201 Created Location: 'https://api.socialidnow.com/v1/marketing/datastore/schemas/first_schema' Status: 201