323 строки
11 KiB
JSON
323 строки
11 KiB
JSON
{
|
|
"swagger":"2.0",
|
|
"info":{
|
|
"title":"Tulip",
|
|
"description":"Connect to your Tulip instance to read, update and create records in Tulip Tables. You will need an active Tulip account and access to set up a bot",
|
|
"contact":{
|
|
"name":"Tulip Support",
|
|
"url":"https://support.tulip.co/",
|
|
"email":"support@tulip.co"
|
|
},
|
|
"version":"1.0"
|
|
},
|
|
"host":"api.tulip.co",
|
|
"basePath":"/api/v3",
|
|
"schemes":[
|
|
"https"
|
|
],
|
|
"consumes":[
|
|
],
|
|
"produces":[
|
|
],
|
|
"paths":{
|
|
"/tables/{tableId}/records":{
|
|
"post":{
|
|
"description":"Create a record in a tulip table",
|
|
"summary":"Create Record",
|
|
"operationId":"CreateRecord",
|
|
"consumes":[
|
|
"application/json"
|
|
],
|
|
"parameters":[
|
|
{
|
|
"$ref":"#/parameters/tableId"
|
|
},
|
|
{
|
|
"$ref":"#/parameters/dynamicTableSchema"
|
|
}
|
|
],
|
|
"responses":{
|
|
"201":{
|
|
"description":"The Tulip Table record was created successfully. The details of the created Table record are returned in the response.",
|
|
"schema":{
|
|
"$ref": "#/definitions/dynamicTableSchema"
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/tables/{tableId}":{
|
|
"get":{
|
|
"responses":{
|
|
"200":{
|
|
"description":"The Tulip Table was retrieved successfully.",
|
|
"schema":{
|
|
"type":"object"
|
|
}
|
|
}
|
|
},
|
|
"summary":"Get Table Scheme",
|
|
"operationId":"GetTable",
|
|
"parameters":[
|
|
{
|
|
"$ref":"#/parameters/tableId"
|
|
}
|
|
],
|
|
"x-ms-visibility":"internal"
|
|
}
|
|
},
|
|
"/tables":{
|
|
"get":{
|
|
"responses":{
|
|
"200":{
|
|
"description":"The list of Tulip Tables was retrieved successfully.",
|
|
"schema":{
|
|
"type":"array",
|
|
"items":{
|
|
"type":"object",
|
|
"properties":{
|
|
"id":{
|
|
"type":"string",
|
|
"description":"id"
|
|
},
|
|
"importFamilyID":{
|
|
"type":"string",
|
|
"description":"importFamilyID"
|
|
},
|
|
"label":{
|
|
"type":"string",
|
|
"description":"label"
|
|
},
|
|
"description":{
|
|
"type":"string",
|
|
"description":"description"
|
|
},
|
|
"columns":{
|
|
"type":"array",
|
|
"items":{
|
|
"type":"object",
|
|
"properties":{
|
|
"name":{
|
|
"type":"string",
|
|
"description":"name"
|
|
},
|
|
"label":{
|
|
"type":"string",
|
|
"description":"label"
|
|
},
|
|
"description":{
|
|
"type":"string",
|
|
"description":"description"
|
|
},
|
|
"dataType":{
|
|
"type":"object",
|
|
"properties":{
|
|
"type":{
|
|
"type":"string",
|
|
"description":"type"
|
|
},
|
|
"columnOrientation":{
|
|
"type":"string",
|
|
"description":"columnOrientation"
|
|
},
|
|
"tableLinkID":{
|
|
"type":"string",
|
|
"description":"tableLinkID"
|
|
}
|
|
},
|
|
"description":"dataType"
|
|
},
|
|
"hidden":{
|
|
"type":"boolean",
|
|
"description":"hidden"
|
|
},
|
|
"unique":{
|
|
"type":"boolean",
|
|
"description":"unique"
|
|
}
|
|
}
|
|
},
|
|
"description":"columns"
|
|
},
|
|
"createdBy":{
|
|
"type":"string",
|
|
"description":"createdBy"
|
|
},
|
|
"createdAt":{
|
|
"type":"string",
|
|
"description":"createdAt"
|
|
},
|
|
"updatedBy":{
|
|
"type":"string",
|
|
"description":"updatedBy"
|
|
},
|
|
"updatedAt":{
|
|
"type":"string",
|
|
"description":"updatedAt"
|
|
},
|
|
"workspaceID":{
|
|
"type":"string",
|
|
"description":"workspaceID"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"summary":"Get Tables",
|
|
"description":"Gets a list of your tulip tables and the fields",
|
|
"operationId":"GetTables",
|
|
"x-ms-visibility":"internal",
|
|
"parameters":[
|
|
|
|
]
|
|
}
|
|
},
|
|
"/tables/{tableId}/records/{recordId}":{
|
|
"get":{
|
|
"responses":{
|
|
"200":{
|
|
"description":"The Tulip Table record was retrieved successfully.",
|
|
"schema":{
|
|
"$ref": "#/definitions/dynamicTableSchema"
|
|
}
|
|
}
|
|
},
|
|
"summary":"Get Record",
|
|
"description":"Get a record from a Tulip Table",
|
|
"operationId":"GetRecord",
|
|
"parameters":[
|
|
{
|
|
"$ref":"#/parameters/tableId"
|
|
},
|
|
{
|
|
"$ref":"#/parameters/recordId"
|
|
}
|
|
]
|
|
},
|
|
"put":{
|
|
"responses":{
|
|
"200":{
|
|
"description":"The Tulip Table record was updated successfully. The details of the updated Table record are returned in the response.",
|
|
"schema":{
|
|
"$ref": "#/definitions/dynamicTableSchema"
|
|
}
|
|
}
|
|
},
|
|
"summary":"Update Record",
|
|
"operationId":"UpdateRecord",
|
|
"consumes":[
|
|
"application/json"
|
|
],
|
|
"parameters":[
|
|
{
|
|
"$ref":"#/parameters/tableId"
|
|
},
|
|
{
|
|
"$ref":"#/parameters/recordId"
|
|
},
|
|
{
|
|
"$ref": "#/parameters/dynamicTableSchema"
|
|
}
|
|
],
|
|
"description":"Updates the fields of a record in a Tulip Table by the record id. The record's _updatedAt field will be updated to the current time. Requires the tables:write API key scope."
|
|
}
|
|
}
|
|
},
|
|
"definitions":{
|
|
"dynamicTableSchema":{
|
|
"type":"object",
|
|
"x-ms-dynamic-schema":{
|
|
"operationId":"GetTable",
|
|
"parameters":{
|
|
"tableId":{
|
|
"parameter":"tableId"
|
|
}
|
|
},
|
|
"value-path":"items"
|
|
}
|
|
}
|
|
},
|
|
"parameters":{
|
|
"tableId":{
|
|
"name":"tableId",
|
|
"in":"path",
|
|
"required":true,
|
|
"type":"string",
|
|
"x-ms-summary":"Tulip Table",
|
|
"description":"Select the Tulip Table to create the record in",
|
|
"x-ms-dynamic-values":{
|
|
"operationId":"GetTables",
|
|
"value-path":"id",
|
|
"value-title":"label"
|
|
},
|
|
"x-ms-url-encoding":"single"
|
|
},
|
|
"dynamicTableSchema":{
|
|
"name":"dynamicTableSchema",
|
|
"in":"body",
|
|
"required":true,
|
|
"description":"ID and field values for the new record to be created. ID is required and must be unique.",
|
|
"schema":{
|
|
"type":"object",
|
|
"x-ms-dynamic-schema":{
|
|
"operationId":"GetTable",
|
|
"parameters":{
|
|
"tableId":{
|
|
"parameter":"tableId"
|
|
}
|
|
},
|
|
"value-path":"items"
|
|
}
|
|
}
|
|
},
|
|
"recordId": {
|
|
"name":"recordId",
|
|
"in":"path",
|
|
"required":true,
|
|
"type":"string",
|
|
"x-ms-summary":"Record Unique ID",
|
|
"description":"Unique ID for the record in the selected Tulip Table",
|
|
"x-ms-url-encoding":"single"
|
|
}
|
|
},
|
|
"responses":{
|
|
|
|
},
|
|
"securityDefinitions":{
|
|
"basic-auth":{
|
|
"type":"basic"
|
|
}
|
|
},
|
|
"security":[
|
|
{
|
|
"basic-auth":[
|
|
|
|
]
|
|
}
|
|
],
|
|
"tags":[
|
|
|
|
],
|
|
"x-ms-connector-metadata":[
|
|
{
|
|
"propertyName":"Website",
|
|
"propertyValue":"https://tulip.co/"
|
|
},
|
|
{
|
|
"propertyName":"Privacy policy",
|
|
"propertyValue":"https://tulip.co/legal/privacy-policy/"
|
|
},
|
|
{
|
|
"propertyName":"API license Agreement",
|
|
"propertyValue":"https://tulip.co/legal/api-license-agreement/"
|
|
},
|
|
{
|
|
"propertyName":"Categories",
|
|
"propertyValue":"Business Intelligence;Collaboration"
|
|
}
|
|
]
|
|
}
|
|
|