-
Notifications
You must be signed in to change notification settings - Fork 8
/
swagger.json
1 lines (1 loc) · 644 KB
/
swagger.json
1
{"openapi":"3.0.0","info":{"version":"1.0.0","title":"Teable App","description":"Manage Data as easy as drink a cup of tea","x-logo":{"backgroundColor":"#F0F0F0","altText":"Teable logo"}},"servers":[{"url":"http://127.0.0.1:3000/api"}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{},"parameters":{}},"paths":{"/table/{tableId}/record/{recordId}":{"get":{"description":"Get a record","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"array","items":{"type":"string"},"description":"If you want to get only some fields, pass in this parameter, otherwise all visible fields will be obtained, The parameter value depends on the specified fieldKeyType to determine whether it is name or id"},"required":false,"name":"projection","in":"query"},{"schema":{"type":"string","enum":["json","text"],"default":"json","description":"Define the return value formate, you can set it to text if you only need simple string value"},"required":false,"name":"cellFormat","in":"query"},{"schema":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"required":false,"name":"fieldKeyType","in":"query"}],"responses":{"200":{"description":"Get a record","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}}}}},"patch":{"description":"Update a record","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fieldKeyType":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"typecast":{"type":"boolean","description":"Automatic data conversion from cellValues if the typecast parameter is passed in. Automatic conversion is disabled by default to ensure data integrity, but it may be helpful for integrating with 3rd party data sources."},"record":{"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."}},"required":["fields"]},"order":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create record (will create a order index automatically)"},"anchorId":{"type":"string","description":"The record id to anchor to"},"position":{"type":"string","enum":["before","after"]}},"required":["viewId","anchorId","position"],"description":"Where this record to insert to"}},"required":["record"],"description":"Update record by id"}}}},"responses":{"200":{"description":"Returns record data after update.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}}}}},"delete":{"description":"Delete a record","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"post":{"description":"Duplicate the selected record","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create record (will create a order index automatically)"},"anchorId":{"type":"string","description":"The record id to anchor to"},"position":{"type":"string","enum":["before","after"]}},"required":["viewId","anchorId","position"],"description":"Where this record to insert to"}}}},"responses":{"201":{"description":"Successful duplicate","content":{"application/json":{"schema":{"type":"object","properties":{"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]},"description":"Array of record objects ","example":[{"id":"recXXXXXXX","fields":{"single line text":"text value"}}]},"extra":{"type":"object","properties":{"groupPoints":{"type":"array","nullable":true,"items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"number","enum":[0]},"depth":{"type":"number","maximum":2,"minimum":0},"value":{"nullable":true},"isCollapsed":{"type":"boolean"}},"required":["id","type","depth","isCollapsed"]},{"type":"object","properties":{"type":{"type":"number","enum":[1]},"count":{"type":"number"}},"required":["type","count"]}]},"description":"Group points for the view"}}}},"required":["records"]}}}}}}},"/table/{tableId}/record":{"get":{"description":"Get multiple records","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"array","items":{"type":"string"},"description":"If you want to get only some fields, pass in this parameter, otherwise all visible fields will be obtained, The parameter value depends on the specified fieldKeyType to determine whether it is name or id"},"required":false,"name":"projection","in":"query"},{"schema":{"type":"string","enum":["json","text"],"default":"json","description":"Define the return value formate, you can set it to text if you only need simple string value"},"required":false,"name":"cellFormat","in":"query"},{"schema":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"required":false,"name":"fieldKeyType","in":"query"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The record count you want to take, maximum is 2000","example":100},"required":false,"name":"take","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The records count you want to skip","example":0},"required":false,"name":"skip","in":"query"}],"responses":{"200":{"description":"List of records","content":{"application/json":{"schema":{"type":"object","properties":{"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]},"description":"Array of record objects ","example":[{"id":"recXXXXXXX","fields":{"single line text":"text value"}}]},"offset":{"type":"string","description":"If more records exist, the response includes an offset. Use this offset for fetching the next page of records."},"extra":{"type":"object","properties":{"groupPoints":{"type":"array","nullable":true,"items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"number","enum":[0]},"depth":{"type":"number","maximum":2,"minimum":0},"value":{"nullable":true},"isCollapsed":{"type":"boolean"}},"required":["id","type","depth","isCollapsed"]},{"type":"object","properties":{"type":{"type":"number","enum":[1]},"count":{"type":"number"}},"required":["type","count"]}]},"description":"Group points for the view"}}}},"required":["records"]}}}}}},"post":{"description":"Create multiple records","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fieldKeyType":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"typecast":{"type":"boolean","description":"Automatic data conversion from cellValues if the typecast parameter is passed in. Automatic conversion is disabled by default to ensure data integrity, but it may be helpful for integrating with 3rd party data sources."},"order":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create record (will create a order index automatically)"},"anchorId":{"type":"string","description":"The record id to anchor to"},"position":{"type":"string","enum":["before","after"]}},"required":["viewId","anchorId","position"],"description":"Where this record to insert to"},"records":{"type":"array","items":{"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."}},"required":["fields"]},"description":"Array of record objects ","example":[{"fields":{"single line text":"text value"}}]}},"required":["records"],"description":"Multiple Create records"}}}},"responses":{"201":{"description":"Returns data about the records.","content":{"application/json":{"schema":{"type":"object","properties":{"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]},"description":"Array of record objects ","example":[{"id":"recXXXXXXX","fields":{"single line text":"text value"}}]},"extra":{"type":"object","properties":{"groupPoints":{"type":"array","nullable":true,"items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"number","enum":[0]},"depth":{"type":"number","maximum":2,"minimum":0},"value":{"nullable":true},"isCollapsed":{"type":"boolean"}},"required":["id","type","depth","isCollapsed"]},{"type":"object","properties":{"type":{"type":"number","enum":[1]},"count":{"type":"number"}},"required":["type","count"]}]},"description":"Group points for the view"}}}},"required":["records"]}}}}}},"patch":{"description":"Update records","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fieldKeyType":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"typecast":{"type":"boolean","description":"Automatic data conversion from cellValues if the typecast parameter is passed in. Automatic conversion is disabled by default to ensure data integrity, but it may be helpful for integrating with 3rd party data sources."},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."}},"required":["id","fields"]}},"order":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create record (will create a order index automatically)"},"anchorId":{"type":"string","description":"The record id to anchor to"},"position":{"type":"string","enum":["before","after"]}},"required":["viewId","anchorId","position"],"description":"Where this record to insert to"}},"required":["records"],"description":"Multiple Update records"}}}},"responses":{"200":{"description":"Returns the records data after update.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}}}}}},"delete":{"description":"Delete multiple records","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"array","items":{"type":"string"}},"required":true,"name":"recordIds","in":"query"}],"responses":{"200":{"description":"Deleted successfully"}}}},"/space/{spaceId}/collaborators":{"get":{"description":"List a space collaborator","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"},{"schema":{"type":"boolean"},"required":false,"name":"includeSystem","in":"query"},{"schema":{"type":"boolean"},"required":false,"name":"includeBase","in":"query"}],"responses":{"200":{"description":"Successful response, return space collaborator list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string"},"userName":{"type":"string"},"email":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"avatar":{"type":"string","nullable":true},"createdTime":{"type":"string"},"base":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}},"required":["userId","userName","email","role","avatar","createdTime"]}}}}}}},"delete":{"description":"Delete a collaborator","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"userId","in":"query"}],"responses":{"200":{"description":"Successful response."}}},"patch":{"description":"Update a space collaborator","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"invitationId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]}},"required":["userId","role"]}}}},"responses":{"200":{"description":"Successful response."}}}},"/trash":{"get":{"description":"Get trash list for spaces or bases","tags":["trash"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string","enum":["space","base"]},"required":true,"name":"resourceType","in":"query"}],"responses":{"200":{"description":"Get trash successfully","content":{"application/json":{"schema":{"type":"object","properties":{"trashItems":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"resourceId":{"type":"string"},"resourceType":{"type":"string","enum":["space","base","table"]},"deletedTime":{"type":"string"},"deletedBy":{"type":"string"}},"required":["id","resourceId","resourceType","deletedTime","deletedBy"]},{"type":"object","properties":{"id":{"type":"string"},"resourceIds":{"type":"array","items":{"type":"string"}},"resourceType":{"type":"string","enum":["view","field","record"]},"deletedTime":{"type":"string"},"deletedBy":{"type":"string"}},"required":["id","resourceIds","resourceType","deletedTime","deletedBy"]}]}},"userMap":{"type":"object","additionalProperties":{"type":"object","properties":{"email":{"type":"string"},"avatar":{"type":"string","nullable":true},"id":{"type":"string"},"name":{"type":"string"}},"required":["email","avatar","id","name"]}},"resourceMap":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]},{"type":"object","properties":{"id":{"type":"string"},"spaceId":{"type":"string"},"name":{"type":"string"}},"required":["id","spaceId","name"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]}},"required":["id","name","type"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"]},"isLookup":{"type":"boolean","nullable":true},"options":{"type":"array","nullable":true,"items":{"type":"string"}}},"required":["id","name","type","isLookup"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}]}},"nextCursor":{"type":"string","nullable":true}},"required":["trashItems","userMap","resourceMap"]}}}}}}},"/trash/items":{"get":{"description":"Get trash items for base or table","tags":["trash"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"resourceId","in":"query"},{"schema":{"type":"string","enum":["base","table"]},"required":true,"name":"resourceType","in":"query"},{"schema":{"type":"string","nullable":true},"required":false,"name":"cursor","in":"query"}],"responses":{"200":{"description":"Get trash successfully","content":{"application/json":{"schema":{"type":"object","properties":{"trashItems":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"resourceId":{"type":"string"},"resourceType":{"type":"string","enum":["space","base","table"]},"deletedTime":{"type":"string"},"deletedBy":{"type":"string"}},"required":["id","resourceId","resourceType","deletedTime","deletedBy"]},{"type":"object","properties":{"id":{"type":"string"},"resourceIds":{"type":"array","items":{"type":"string"}},"resourceType":{"type":"string","enum":["view","field","record"]},"deletedTime":{"type":"string"},"deletedBy":{"type":"string"}},"required":["id","resourceIds","resourceType","deletedTime","deletedBy"]}]}},"userMap":{"type":"object","additionalProperties":{"type":"object","properties":{"email":{"type":"string"},"avatar":{"type":"string","nullable":true},"id":{"type":"string"},"name":{"type":"string"}},"required":["email","avatar","id","name"]}},"resourceMap":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]},{"type":"object","properties":{"id":{"type":"string"},"spaceId":{"type":"string"},"name":{"type":"string"}},"required":["id","spaceId","name"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]}},"required":["id","name","type"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"]},"isLookup":{"type":"boolean","nullable":true},"options":{"type":"array","nullable":true,"items":{"type":"string"}}},"required":["id","name","type","isLookup"]},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}]}},"nextCursor":{"type":"string","nullable":true}},"required":["trashItems","userMap","resourceMap"]}}}}}}},"/trash/reset-items":{"delete":{"description":"Reset trash items for a base or table","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"resourceId","in":"query"},{"schema":{"type":"string","enum":["base","table"]},"required":true,"name":"resourceType","in":"query"},{"schema":{"type":"string","nullable":true},"required":false,"name":"cursor","in":"query"}],"responses":{"200":{"description":"Reset successfully"}}}},"/trash/restore/{trashId}":{"post":{"description":"restore a space, base, table, etc.","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"trashId","in":"path"}],"responses":{"201":{"description":"Restored successfully"}}}},"/table/{tableId}/record/{recordId}/history":{"get":{"description":"Get the history list for a record","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Get the history list for a record","content":{"application/json":{"schema":{"type":"object","properties":{"historyList":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"tableId":{"type":"string"},"recordId":{"type":"string"},"fieldId":{"type":"string"},"before":{"type":"object","properties":{"meta":{"type":"object","properties":{"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"options":{"nullable":true}},"required":["name","type","cellValueType"]},"data":{"nullable":true}},"required":["meta"]},"after":{"type":"object","properties":{"meta":{"type":"object","properties":{"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"options":{"nullable":true}},"required":["name","type","cellValueType"]},"data":{"nullable":true}},"required":["meta"]},"createdTime":{"type":"string"},"createdBy":{"type":"string"}},"required":["id","tableId","recordId","fieldId","before","after","createdTime","createdBy"]}},"userMap":{"type":"object","additionalProperties":{"type":"object","properties":{"email":{"type":"string"},"avatar":{"type":"string","nullable":true},"id":{"type":"string"},"name":{"type":"string"}},"required":["email","avatar","id","name"]}},"nextCursor":{"type":"string","nullable":true}},"required":["historyList","userMap"]}}}}}}},"/table/{tableId}/record/history":{"get":{"description":"Get the history list of all records in a table","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Get the history list of all records in a table","content":{"application/json":{"schema":{"type":"object","properties":{"historyList":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"tableId":{"type":"string"},"recordId":{"type":"string"},"fieldId":{"type":"string"},"before":{"type":"object","properties":{"meta":{"type":"object","properties":{"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"options":{"nullable":true}},"required":["name","type","cellValueType"]},"data":{"nullable":true}},"required":["meta"]},"after":{"type":"object","properties":{"meta":{"type":"object","properties":{"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"options":{"nullable":true}},"required":["name","type","cellValueType"]},"data":{"nullable":true}},"required":["meta"]},"createdTime":{"type":"string"},"createdBy":{"type":"string"}},"required":["id","tableId","recordId","fieldId","before","after","createdTime","createdBy"]}},"userMap":{"type":"object","additionalProperties":{"type":"object","properties":{"email":{"type":"string"},"avatar":{"type":"string","nullable":true},"id":{"type":"string"},"name":{"type":"string"}},"required":["email","avatar","id","name"]}},"nextCursor":{"type":"string","nullable":true}},"required":["historyList","userMap"]}}}}}}},"/table/{tableId}/record/{recordId}/{fieldId}/uploadAttachment":{"post":{"description":"Upload attachment","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"string","description":"attachment field id"},"required":true,"name":"fieldId","in":"path"}],"requestBody":{"description":"upload attachment","required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary"},"fileUrl":{"type":"string"}}}}}},"responses":{"201":{"description":"Returns record data after update.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}}}}}},"/table/{tableId}/record/{recordId}/status":{"get":{"description":"Get record status","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"array","items":{"type":"string"},"description":"If you want to get only some fields, pass in this parameter, otherwise all visible fields will be obtained, The parameter value depends on the specified fieldKeyType to determine whether it is name or id"},"required":false,"name":"projection","in":"query"},{"schema":{"type":"string","enum":["json","text"],"default":"json","description":"Define the return value formate, you can set it to text if you only need simple string value"},"required":false,"name":"cellFormat","in":"query"},{"schema":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"required":false,"name":"fieldKeyType","in":"query"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The record count you want to take, maximum is 2000","example":100},"required":false,"name":"take","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The records count you want to skip","example":0},"required":false,"name":"skip","in":"query"}],"responses":{"200":{"description":"List of records","content":{"application/json":{"schema":{"type":"object","properties":{"isVisible":{"type":"boolean"},"isDeleted":{"type":"boolean"}},"required":["isVisible","isDeleted"]}}}}}}},"/table/{tableId}/field":{"post":{"description":"Create a field","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"name":{"type":"string","minLength":1,"description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"unique":{"type":"boolean","description":"Whether this field is not unique."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"description":{"type":"string","nullable":true,"description":"The description of the field.","example":"this is a summary"},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["foreignTableId","lookupFieldId","linkFieldId"],"description":"The lookup options for field, you need to configure it when isLookup attribute is true or field type is rollup."},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["name"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false}],"description":"The options of the field. The configuration of the field's options depend on the it's specific type."},"id":{"type":"string","description":"The id of the field that start with \"fld\", followed by exactly 16 alphanumeric characters `/^fld[\\da-zA-Z]{16}$/`. It is sometimes useful to specify an id at creation time","example":"fldxxxxxxxxxxxxxxxx"},"order":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create field"},"orderIndex":{"type":"number"}},"required":["viewId","orderIndex"]}},"required":["type"]}}}},"responses":{"201":{"description":"Returns data about a field.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}}}}}},"get":{"description":"Get field list by query","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"The id of the view."},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"boolean","nullable":true},"required":false,"name":"filterHidden","in":"query"},{"schema":{"type":"array","items":{"type":"string"}},"required":false,"name":"excludeFieldIds","in":"query"}],"responses":{"200":{"description":"Returns the list of field.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}}}}}}},"delete":{"description":"Delete field list","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"array","items":{"type":"string"}},"required":true,"name":"fieldIds","in":"query"}],"responses":{"200":{"description":"Deleted successfully"}}}},"/table/{tableId}/field/{fieldId}":{"delete":{"description":"Delete a field","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"get":{"description":"Get a field","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"path"}],"responses":{"200":{"description":"Returns data about a field.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}}}}}},"patch":{"summary":"Update a field","description":"Only for common props, include name, description and dbFieldName. for other properties, you should use the convert field api","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"description":{"type":"string","nullable":true,"description":"The description of the field.","example":"this is a summary"},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}}}}}},"responses":{"200":{"description":"Updated Successfully"}}}},"/table/{tableId}/field/{fieldId}/convert":{"put":{"summary":"Convert a field","description":"All records of this field will automatically be type casted, and symmetric field will auto generate or delete if needed","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"name":{"type":"string","minLength":1,"description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"unique":{"type":"boolean","description":"Whether this field is not unique."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"description":{"type":"string","nullable":true,"description":"The description of the field.","example":"this is a summary"},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["foreignTableId","lookupFieldId","linkFieldId"],"description":"The lookup options for field, you need to configure it when isLookup attribute is true or field type is rollup."},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["name"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false}],"description":"The options of the field. The configuration of the field's options depend on the it's specific type."}},"required":["type"],"description":"You should always pass in all the properties of the entire field, whether you have modified it or not。You can simply retrieve it, modify it, and pass it in"}}}},"responses":{"200":{"description":"Returns field data after update.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}}}}}}},"/table/{tableId}/view/{viewId}/filter-link-records":{"get":{"description":"Getting associated records for a view filter configuration.","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"200":{"description":"Returns the view to filter the configured records.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string"},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"}},"required":["id"]}}},"required":["tableId","records"]}}}}}}}},"/table/{tableId}/field/{fieldId}/filter-link-records":{"get":{"description":"Getting associated records for a view filter configuration.","tags":["field"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"200":{"description":"Returns the link field to filter the configured records.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string"},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"}},"required":["id"]}}},"required":["tableId","records"]}}}}}}}},"/table/{tableId}/view":{"post":{"description":"Create a view","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["type"]}}}},"responses":{"201":{"description":"Returns data about a view.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"createdBy":{"type":"string"},"lastModifiedBy":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["id","name","type","createdBy","createdTime","columnMeta"]}}}}}},"get":{"description":"Get view list","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Returns the list of view.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"createdBy":{"type":"string"},"lastModifiedBy":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["id","name","type","createdBy","createdTime","columnMeta"]}}}}}}}},"/table/{tableId}/view/{viewId}":{"delete":{"description":"Delete a view","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"get":{"description":"Get a view","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"200":{"description":"Returns data about a view.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"createdBy":{"type":"string"},"lastModifiedBy":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["id","name","type","createdBy","createdTime","columnMeta"]}}}}}}},"/table/{tableId}/view/{viewId}/manual-sort":{"put":{"description":"Update view raw order","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}}},"required":["sortObjs"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/column-meta":{"put":{"description":"Update view column meta","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"Field ID"},"columnMeta":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"additionalProperties":false},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"additionalProperties":false},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"additionalProperties":false},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"additionalProperties":false}]}},"required":["fieldId","columnMeta"]}}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/filter":{"put":{"description":"Update view filter","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","example":{"filter":{"filterSet":[{"isSymbol":false,"fieldId":"fldxxxxxxxxxxxxxxxx","value":"value","operator":"is"}],"conjunction":"and"}}}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/sort":{"put":{"description":"Update view sort condition","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/group":{"put":{"description":"Update view group condition","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/options":{"patch":{"description":"Update view option","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]}},"required":["options"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/order":{"put":{"description":"Update view order","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"anchorId":{"type":"string"},"position":{"type":"string","enum":["before","after"]}},"required":["anchorId","position"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/record-order":{"put":{"description":"Update record order in view","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"anchorId":{"type":"string","description":"Id of the record that you want to move other records around"},"position":{"type":"string","enum":["before","after"]},"recordIds":{"type":"array","items":{"type":"string"},"maxItems":1000,"description":"Ids of those records you want to move","maxLength":1000}},"required":["anchorId","position","recordIds"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/name":{"put":{"description":"Update view name","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/description":{"put":{"description":"Update view description","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"description":{"type":"string"}},"required":["description"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/share-meta":{"put":{"description":"Update view share meta","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}}}}},"responses":{"200":{"description":"Successfully update."}}}},"/table/{tableId}/view/{viewId}/refresh-share-id":{"post":{"description":"Refresh view share id","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"201":{"description":"Returns successfully refreshed view share id","content":{"application/json":{"schema":{"type":"object","properties":{"shareId":{"type":"string"}},"required":["shareId"]}}}}}}},"/table/{tableId}/view/{viewId}/disable-share":{"post":{"description":"Disable view share","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"201":{"description":"Returns successfully disable view share"}}}},"/table/{tableId}/view/{viewId}/enable-share":{"post":{"description":"Enable view share","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"201":{"description":"Returns successfully enable view share","content":{"application/json":{"schema":{"type":"object","properties":{"shareId":{"type":"string"}},"required":["shareId"]}}}}}}},"/table/{tableId}/view/plugin":{"post":{"description":"Install a plugin to a view","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"pluginId":{"type":"string"}},"required":["pluginId"]}}}},"responses":{"201":{"description":"Returns data about the installed plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"pluginId":{"type":"string"},"pluginInstallId":{"type":"string"},"name":{"type":"string"},"viewId":{"type":"string"}},"required":["pluginId","pluginInstallId","name","viewId"]}}}}}}},"/base/{baseId}/dashboard":{"get":{"description":"Get a list of dashboards in base","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Returns data about the dashboards.","content":{"application/json":{"schema":{"type":"array","items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}}}}}}}},"post":{"description":"Create a new dashboard","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"Returns data about the created dashboard.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}}}}}}},"/base/{baseId}/dashboard/{id}":{"get":{"description":"Get a dashboard by id","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"responses":{"200":{"description":"Returns data about the dashboard.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"layout":{"type":"array","items":{"type":"object","properties":{"pluginInstallId":{"type":"string"},"x":{"type":"number"},"y":{"type":"number"},"w":{"type":"number"},"h":{"type":"number"}},"required":["pluginInstallId","x","y","w","h"]}},"pluginMap":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string"},"pluginInstallId":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"}},"required":["id","pluginInstallId","name"]}}},"required":["id","name"]}}}}}},"delete":{"description":"Delete a dashboard by id","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"responses":{"200":{"description":"Dashboard deleted"}}}},"/base/{baseId}/dashboard/{dashboardId}/rename":{"patch":{"description":"Rename a dashboard by id","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"dashboardId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"Returns data about the renamed dashboard.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}}}}}}},"/base/{baseId}/dashboard/{id}/layout":{"patch":{"description":"Update a dashboard layout by id","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"layout":{"type":"array","items":{"type":"object","properties":{"pluginInstallId":{"type":"string"},"x":{"type":"number"},"y":{"type":"number"},"w":{"type":"number"},"h":{"type":"number"}},"required":["pluginInstallId","x","y","w","h"]}}},"required":["layout"]}}}},"responses":{"200":{"description":"Returns data about the updated dashboard layout.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"layout":{"type":"array","items":{"type":"object","properties":{"pluginInstallId":{"type":"string"},"x":{"type":"number"},"y":{"type":"number"},"w":{"type":"number"},"h":{"type":"number"}},"required":["pluginInstallId","x","y","w","h"]}}},"required":["id","layout"]}}}}}}},"/base/{baseId}/dashboard/{id}/plugin":{"post":{"description":"Install a plugin to a dashboard","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"pluginId":{"type":"string"}},"required":["name","pluginId"]}}}},"responses":{"201":{"description":"Returns data about the installed plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"pluginId":{"type":"string"},"pluginInstallId":{"type":"string"},"name":{"type":"string"}},"required":["id","pluginId","pluginInstallId","name"]}}}}}}},"/base/{baseId}/dashboard/{dashboardId}/plugin/{pluginInstallId}":{"delete":{"description":"Remove a plugin from a dashboard","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"dashboardId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"pluginInstallId","in":"path"}],"responses":{"200":{"description":"Plugin removed successfully."}}}},"/base/{baseId}/dashboard/{dashboardId}/plugin/{pluginInstallId}/rename":{"patch":{"description":"Rename a plugin in a dashboard","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"id","in":"path"},{"schema":{"type":"string"},"required":true,"name":"pluginInstallId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"Returns data about the renamed plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"pluginInstallId":{"type":"string"},"name":{"type":"string"}},"required":["id","pluginInstallId","name"]}}}}}}},"/base/{baseId}/dashboard/{dashboardId}/plugin/{installPluginId}":{"get":{"description":"Get a dashboard install plugin by id","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"dashboardId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"installPluginId","in":"path"}],"responses":{"200":{"description":"Returns data about the dashboard install plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"pluginId":{"type":"string"},"pluginInstallId":{"type":"string"},"baseId":{"type":"string"},"name":{"type":"string"},"storage":{"type":"object","additionalProperties":{"nullable":true}}},"required":["pluginId","pluginInstallId","baseId","name"]}}}}}}},"/base/{baseId}/dashboard/{dashboardId}/plugin/{pluginInstallId}/update-storage":{"patch":{"description":"Update storage of a plugin in a dashboard","tags":["dashboard"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"dashboardId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"pluginInstallId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"storage":{"type":"object","additionalProperties":{"nullable":true}}}}}}},"responses":{"200":{"description":"Returns data about the updated plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"baseId":{"type":"string"},"dashboardId":{"type":"string"},"pluginInstallId":{"type":"string"},"storage":{"type":"object","additionalProperties":{"nullable":true}}},"required":["baseId","dashboardId","pluginInstallId"]}}}}}}},"/table/{tableId}/view/{viewId}/plugin/{pluginInstallId}":{"patch":{"description":"Update storage of a plugin in a view","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"pluginInstallId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"storage":{"type":"object","additionalProperties":{"nullable":true}}}}}}},"responses":{"200":{"description":"Returns data about the updated plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"tableId":{"type":"string"},"viewId":{"type":"string"},"pluginInstallId":{"type":"string"},"storage":{"type":"object","additionalProperties":{"nullable":true}}},"required":["tableId","viewId","pluginInstallId"]}}}}}}},"/table/{tableId}/view/{viewId}/plugin":{"get":{"description":"Get a view install plugin by id","tags":["view"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"path"}],"responses":{"200":{"description":"Returns data about the view install plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"pluginId":{"type":"string"},"pluginInstallId":{"type":"string"},"baseId":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"storage":{"type":"object","additionalProperties":{"nullable":true}}},"required":["pluginId","pluginInstallId","baseId","name"]}}}}}}},"/table/{tableId}/aggregation":{"get":{"description":"Get aggregations by query","tags":["aggregation"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Returns aggregations list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"aggregations":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"total":{"type":"object","nullable":true,"properties":{"value":{"anyOf":[{"type":"string"},{"type":"number"},{"nullable":true}]},"aggFunc":{"type":"string","enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"]}},"required":["value","aggFunc"],"description":"Aggregations by all data in field"},"group":{"type":"object","nullable":true,"additionalProperties":{"type":"object","properties":{"value":{"anyOf":[{"type":"string"},{"type":"number"},{"nullable":true}]},"aggFunc":{"type":"string","enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"]}},"required":["value","aggFunc"]},"description":"Aggregations by grouped data in field"}},"required":["fieldId","total"]}}}}}}}}}}},"/table/{tableId}/aggregation/row-count":{"get":{"description":"Get row count for the view","tags":["aggregation"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"}],"responses":{"200":{"description":"Row count for the view","content":{"application/json":{"schema":{"type":"object","properties":{"rowCount":{"type":"number"}},"required":["rowCount"]}}}}}}},"/table/{tableId}/aggregation/group-points":{"get":{"description":"Get group points for the view","tags":["aggregation"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"}],"responses":{"200":{"description":"Group points for the view","content":{"application/json":{"schema":{"type":"array","nullable":true,"items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"number","enum":[0]},"depth":{"type":"number","maximum":2,"minimum":0},"value":{"nullable":true},"isCollapsed":{"type":"boolean"}},"required":["id","type","depth","isCollapsed"]},{"type":"object","properties":{"type":{"type":"number","enum":[1]},"count":{"type":"number"}},"required":["type","count"]}]}}}}}}}},"/table/{tableId}/aggregation/calendar-daily-collection":{"get":{"description":"Get calendar daily collection for the view","tags":["aggregation"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"type":"string"},"required":true,"name":"startDate","in":"query"},{"schema":{"type":"string"},"required":true,"name":"endDate","in":"query"},{"schema":{"type":"string"},"required":true,"name":"startDateFieldId","in":"query"},{"schema":{"type":"string"},"required":true,"name":"endDateFieldId","in":"query"}],"responses":{"200":{"description":"Calendar daily collection for the view","content":{"application/json":{"schema":{"type":"object","properties":{"countMap":{"type":"object","additionalProperties":{"type":"number"}},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}},"required":["countMap","records"]}}}}}}},"/table/{tableId}/aggregation/search-count":{"get":{"description":"Get search result count with query","tags":["aggregation"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"}],"responses":{"200":{"description":"Search count with query","content":{"application/json":{"schema":{"type":"object","properties":{"count":{"type":"number"}},"required":["count"]}}}}}}},"/table/{tableId}/aggregation/search-index":{"get":{"description":"Get record index with search query","tags":["aggregation"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"}],"responses":{"200":{"description":"record index with search query","content":{"application/json":{"schema":{"type":"array","nullable":true,"items":{"type":"object","properties":{"index":{"type":"number"},"fieldId":{"type":"string"}},"required":["index","fieldId"]}}}}}}}},"/base/{baseId}/table/":{"post":{"description":"Create a table","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"The name of the table."},"dbTableName":{"type":"string","pattern":"^[a-z]\\w{0,62}$","description":"Table name in backend database. Limitation: 1-63 characters, start with letter, can only contain letters, numbers and underscore, case insensitive, cannot be duplicated with existing db table name in the base."},"description":{"type":"string","nullable":true,"description":"The description of the table."},"icon":{"type":"string","nullable":true,"description":"The emoji icon string of the table."},"fields":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"name":{"type":"string","minLength":1,"description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"unique":{"type":"boolean","description":"Whether this field is not unique."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"description":{"type":"string","nullable":true,"description":"The description of the field.","example":"this is a summary"},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["foreignTableId","lookupFieldId","linkFieldId"],"description":"The lookup options for field, you need to configure it when isLookup attribute is true or field type is rollup."},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["name"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false}],"description":"The options of the field. The configuration of the field's options depend on the it's specific type."},"id":{"type":"string","description":"The id of the field that start with \"fld\", followed by exactly 16 alphanumeric characters `/^fld[\\da-zA-Z]{16}$/`. It is sometimes useful to specify an id at creation time","example":"fldxxxxxxxxxxxxxxxx"},"order":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create field"},"orderIndex":{"type":"number"}},"required":["viewId","orderIndex"]}},"required":["type"]},"description":"The fields of the table. If it is empty, 3 fields include SingleLineText, Number, SingleSelect will and 3 empty records be generated by default."},"views":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["type"]},"description":"The views of the table. If it is empty, a grid view will be generated by default."},"records":{"type":"array","items":{"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."}},"required":["fields"]},"description":"The record data of the table. If it is empty, 3 empty records will be generated by default.","example":[{"fields":{"single line text":"text value"}}]},"order":{"type":"number"},"fieldKeyType":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"}},"description":"params for create a table"}}}},"responses":{"201":{"description":"Returns data about a table.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The id of table."},"name":{"type":"string","description":"The name of the table."},"dbTableName":{"type":"string","pattern":"^[a-z]\\w{0,62}$","description":"Table name in backend database. Limitation: 1-63 characters, start with letter, can only contain letters, numbers and underscore, case insensitive, cannot be duplicated with existing db table name in the base."},"description":{"type":"string","description":"The description of the table."},"icon":{"type":"string","description":"The emoji icon string of the table."},"fields":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]},"description":"The fields of the table."},"views":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"createdBy":{"type":"string"},"lastModifiedBy":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["id","name","type","createdBy","createdTime","columnMeta"]},"description":"The views of the table."},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]},"description":"The records of the table."},"order":{"type":"number"},"lastModifiedTime":{"type":"string","description":"The last modified time of the table."},"defaultViewId":{"type":"string","description":"The default view id of the table."}},"required":["id","name","dbTableName","fields","views","records"],"description":"Complete table structure data and initial record data."}}}}}}},"/base/{baseId}/table/{tableId}":{"delete":{"description":"Delete a table","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"get":{"description":"Get a table","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Returns data about a table.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The id of table."},"name":{"type":"string","description":"The name of the table."},"dbTableName":{"type":"string","pattern":"^[a-z]\\w{0,62}$","description":"Table name in backend database. Limitation: 1-63 characters, start with letter, can only contain letters, numbers and underscore, case insensitive, cannot be duplicated with existing db table name in the base."},"description":{"type":"string","description":"The description of the table."},"icon":{"type":"string","description":"The emoji icon string of the table."},"order":{"type":"number"},"lastModifiedTime":{"type":"string","description":"The last modified time of the table."},"defaultViewId":{"type":"string","description":"The default view id of the table."}},"required":["id","name","dbTableName"]}}}}}}},"/base/{baseId}/table":{"get":{"description":"Get table list","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Returns the list of table.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of table."},"name":{"type":"string","description":"The name of the table."},"dbTableName":{"type":"string","pattern":"^[a-z]\\w{0,62}$","description":"Table name in backend database. Limitation: 1-63 characters, start with letter, can only contain letters, numbers and underscore, case insensitive, cannot be duplicated with existing db table name in the base."},"description":{"type":"string","description":"The description of the table."},"icon":{"type":"string","description":"The emoji icon string of the table."},"order":{"type":"number"},"lastModifiedTime":{"type":"string","description":"The last modified time of the table."},"defaultViewId":{"type":"string","description":"The default view id of the table."}},"required":["id","name","dbTableName"]},"description":"The list of tables."}}}}}}},"/base/{baseId}/table/{tableId}/sql-query":{"post":{"description":"Query a table by raw sql","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"viewId","in":"query"},{"schema":{"type":"string"},"required":true,"name":"sql","in":"query"}],"responses":{"200":{"description":"Returns sql query result data."}}}},"/base/{baseId}/table/{tableId}/permanent":{"delete":{"description":"Permanently delete a table","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}}},"/base/{baseId}/table/{tableId}/name":{"put":{"description":"Update table name","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/base/{baseId}/table/{tableId}/icon":{"put":{"description":"Update table icon","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"icon":{"type":"string"}},"required":["icon"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/base/{baseId}/table/{tableId}/order":{"put":{"description":"Update table order","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"anchorId":{"type":"string"},"position":{"type":"string","enum":["before","after"]}},"required":["anchorId","position"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/base/{baseId}/table/{tableId}/description":{"put":{"description":"Update table description","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"description":{"type":"string","nullable":true}},"required":["description"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/base/{baseId}/table/{tableId}/db-table-name":{"put":{"description":"Update physical database table name","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"dbTableName":{"type":"string","minLength":1,"pattern":"^[a-z_]\\w{0,62}$","description":"table name in backend database. Limitation: 1-63 characters, start with letter or underscore, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing table name in the base."}},"required":["dbTableName"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/base/{baseId}/table/{tableId}/default-view-id":{"get":{"description":"Get default view id","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Returns default view id","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]}}}}}}},"/base/{baseId}/table/{tableId}/permission":{"get":{"description":"Get a table permission","tags":["table"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"200":{"description":"Returns data about a table permission.","content":{"application/json":{"schema":{"type":"object","properties":{"table":{"type":"object","additionalProperties":{"type":"boolean"}},"view":{"type":"object","additionalProperties":{"type":"boolean"}},"record":{"type":"object","additionalProperties":{"type":"boolean"}},"field":{"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"boolean"}}},"create":{"type":"boolean"}},"required":["fields","create"]}},"required":["table","view","record","field"]}}}}}}},"/base":{"post":{"description":"Create a base","tags":["base"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"},"name":{"type":"string"},"icon":{"type":"string"}},"required":["spaceId"]}}}},"responses":{"201":{"description":"Returns information about a successfully created base.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"}},"required":["id","name","spaceId"]}}}}}}},"/base/{baseId}":{"delete":{"description":"Delete a base by baseId","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"get":{"description":"Get a base by baseId","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Returns information about a base.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"},"icon":{"type":"string","nullable":true},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]}},"required":["id","name","spaceId","icon","role"]}}}}}},"patch":{"description":"Update a base info","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"icon":{"type":"string"}}}}}},"responses":{"200":{"description":"Returns information about a successfully updated base.","content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"},"name":{"type":"string"},"icon":{"type":"string"}},"required":["spaceId","name"]}}}}}}},"/base/{baseId}/order":{"put":{"description":"Update base order","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"anchorId":{"type":"string"},"position":{"type":"string","enum":["before","after"]}},"required":["anchorId","position"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/base/access/all":{"get":{"description":"Get base list by query","tags":["base"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns the list of base.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"},"icon":{"type":"string","nullable":true},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"collaboratorType":{"type":"string","enum":["space","base"]},"isUnrestricted":{"type":"boolean"}},"required":["id","name","spaceId","icon","role"]}}}}}}}},"/base/{baseId}/collaborators":{"get":{"description":"List a base collaborator","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"boolean","nullable":true},"required":false,"name":"includeSystem","in":"query"}],"responses":{"200":{"description":"Successful response, return base collaborator list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string"},"userName":{"type":"string"},"email":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"avatar":{"type":"string","nullable":true},"createdTime":{"type":"string"},"base":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]},"resourceType":{"type":"string","enum":["space","base"]},"isSystem":{"type":"boolean"}},"required":["userId","userName","email","role","avatar","createdTime","resourceType"]}}}}}}},"delete":{"description":"Delete a base collaborators","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"userId","in":"query"}],"responses":{"200":{"description":"Successful response."}}},"patch":{"description":"Update a base collaborator","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"invitationId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string"},"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["userId","role"]}}}},"responses":{"200":{"description":"Successful response."}}}},"/base/duplicate":{"post":{"description":"duplicate a base","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fromBaseId":{"type":"string","description":"The base to duplicate"},"spaceId":{"type":"string","description":"The space to duplicate the base to"},"withRecords":{"type":"boolean","description":"Whether to duplicate the records"},"name":{"type":"string","description":"The name of the duplicated base"}},"required":["fromBaseId","spaceId"]}}}},"responses":{"201":{"description":"Returns information about a successfully duplicated base.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"}},"required":["id","name","spaceId"]}}}}}}},"/base/create-from-template":{"post":{"description":"Create a base from template","tags":["base"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"},"templateId":{"type":"string"},"withRecords":{"type":"boolean"}},"required":["spaceId","templateId"]}}}},"responses":{"201":{"description":"Returns information about a successfully created base.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"}},"required":["id","name","spaceId"]}}}}}}},"/base/{baseId}/permission":{"get":{"description":"Get a base permission","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Returns data about a base permission.","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"boolean"}}}}}}}},"/base/{baseId}/query":{"get":{"description":"Get base query result","security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"query","in":"query"},{"schema":{"type":"string","enum":["json","text"],"default":"text"},"required":false,"name":"cellFormat","in":"query"}],"responses":{"200":{"description":"The sql query result","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":{"nullable":true}}}}}}}}},"/space/{spaceId}/invitation/link":{"get":{"description":"List a invitation link to your","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Successful response, return invitation information list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"invitationId":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"inviteUrl":{"type":"string"},"invitationCode":{"type":"string"},"createdBy":{"type":"string"},"createdTime":{"type":"string"}},"required":["invitationId","role","inviteUrl","invitationCode","createdBy","createdTime"]}}}}}}},"post":{"description":"Create a invitation link to your","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]}},"required":["role"]}}}},"responses":{"201":{"description":"Successful response, return the ID of the invitation link.","content":{"application/json":{"schema":{"type":"object","properties":{"invitationId":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"inviteUrl":{"type":"string"},"invitationCode":{"type":"string"},"createdBy":{"type":"string"},"createdTime":{"type":"string"}},"required":["invitationId","role","inviteUrl","invitationCode","createdBy","createdTime"]}}}}}}},"/base/{baseId}/invitation/link":{"get":{"description":"List a invitation link to your","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Successful response, return invitation information list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"invitationId":{"type":"string"},"inviteUrl":{"type":"string"},"invitationCode":{"type":"string"},"createdBy":{"type":"string"},"createdTime":{"type":"string"},"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["invitationId","inviteUrl","invitationCode","createdBy","createdTime","role"]}}}}}}},"post":{"description":"Create a invitation link to your","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["role"]}}}},"responses":{"201":{"description":"Successful response, return the ID of the invitation link.","content":{"application/json":{"schema":{"type":"object","properties":{"invitationId":{"type":"string"},"inviteUrl":{"type":"string"},"invitationCode":{"type":"string"},"createdBy":{"type":"string"},"createdTime":{"type":"string"},"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["invitationId","inviteUrl","invitationCode","createdBy","createdTime","role"]}}}}}}},"/base/{baseId}/invitation/link/{invitationId}":{"delete":{"description":"Delete a invitation link to your","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"invitationId","in":"path"}],"responses":{"200":{"description":"Successful response."}}},"patch":{"description":"Update a invitation link to your","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"invitationId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["role"]}}}},"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"type":"object","properties":{"invitationId":{"type":"string"},"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["invitationId","role"]}}}}}}},"/base/{baseId}/invitation/email":{"post":{"description":"Send invitations by e-mail","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"minItems":1},"role":{"type":"string","enum":["creator","editor","commenter","viewer"]}},"required":["emails","role"]}}}},"responses":{"201":{"description":"Successful response, return invitation information.","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"object","properties":{"invitationId":{"type":"string"}},"required":["invitationId"]}}}}}}}},"/base/shared-base":{"get":{"tags":["base"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns information about a shared base.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"},"icon":{"type":"string","nullable":true},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"collaboratorType":{"type":"string","enum":["space","base"]}},"required":["id","name","spaceId","icon","role"]}}}}}}},"/base/{baseId}/permanent":{"delete":{"description":"Permanently delete a base by baseId","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Permanently deleted successfully"}}}},"/space":{"post":{"description":"Create a space","tags":["space"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}}}}}},"responses":{"201":{"description":"Returns information about a successfully created space.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}}}}}},"get":{"description":"Get space list by query","tags":["space"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns the list of space.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"organization":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}},"required":["id","name","role"]}}}}}}}},"/space/{spaceId}":{"delete":{"description":"Delete a space by spaceId","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"get":{"description":"Get a space by spaceId","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Returns information about a space.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"organization":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}},"required":["id","name","role"]}}}}}},"patch":{"description":"Update a space info","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}}}}}},"responses":{"200":{"description":"Returns information about a successfully updated space.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]}}}}}}},"/space/{spaceId}/invitation/link/{invitationId}":{"delete":{"description":"Delete a invitation link to your","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"invitationId","in":"path"}],"responses":{"200":{"description":"Successful response."}}},"patch":{"description":"Update a invitation link to your","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"invitationId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]}},"required":["role"]}}}},"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"type":"object","properties":{"invitationId":{"type":"string"},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]}},"required":["invitationId","role"]}}}}}}},"/space/{spaceId}/invitation/email":{"post":{"description":"Send invitations by e-mail","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"minItems":1},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]}},"required":["emails","role"]}}}},"responses":{"201":{"description":"Successful response, return invitation information.","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"object","properties":{"invitationId":{"type":"string"}},"required":["invitationId"]}}}}}}}},"/space/{spaceId}/base":{"get":{"description":"Get base list by query","tags":["base"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Returns the list of base.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"spaceId":{"type":"string"},"icon":{"type":"string","nullable":true},"role":{"type":"string","enum":["owner","creator","editor","commenter","viewer"]},"collaboratorType":{"type":"string","enum":["space","base"]},"isUnrestricted":{"type":"boolean"}},"required":["id","name","spaceId","icon","role"]}}}}}}}},"/space/{spaceId}/permanent":{"delete":{"description":"Permanently delete a space by spaceId","tags":["space"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Permanently deleted successfully"}}}},"/table/{tableId}/selection/range-to-id":{"get":{"description":"Get the id of records and fields from the selected range","tags":["selection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"type":"array","items":{"type":"string"}},"required":false,"name":"excludeFieldIds","in":"query"},{"schema":{"type":"string","description":"The parameter \"ranges\" is used to represent the coordinates [column, row][] of a selected range in a table. ","example":"[[0, 0], [1, 1]]"},"required":true,"name":"ranges","in":"query"},{"schema":{"type":"string","enum":["rows","columns"],"description":"Types of non-contiguous selections","example":"columns"},"required":false,"name":"type","in":"query"},{"schema":{"type":"string","enum":["recordId","fieldId","all"],"description":"Define which Id to return."},"required":true,"name":"returnType","in":"query"}],"responses":{"200":{"description":"Copy content","content":{"application/json":{"schema":{"type":"object","properties":{"recordIds":{"type":"array","items":{"type":"string"}},"fieldIds":{"type":"array","items":{"type":"string"}}}}}}}}}},"/table/{tableId}/selection/clear":{"patch":{"description":"Clarify the constituency section","tags":["selection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"viewId":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"filterByTql":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"search":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"filterLinkCellCandidate":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"filterLinkCellSelected":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"selectedRecordIds":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"orderBy":{"type":"array","description":"An array of sort objects that specifies how the records should be ordered."},"groupBy":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"collapsedGroupIds":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"excludeFieldIds":{"type":"array","items":{"type":"string"}},"ranges":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"minItems":1,"description":"The parameter \"ranges\" is used to represent the coordinates of a selected range in a table. ","example":[[0,0],[1,1]]},"type":{"type":"string","enum":["rows","columns"],"description":"Types of non-contiguous selections","example":"columns"}},"required":["ranges"]}}}},"responses":{"200":{"description":"Successful clean up"}}}},"/table/{tableId}/selection/copy":{"get":{"description":"Copy operations in tables","tags":["selection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"type":"array","items":{"type":"string"}},"required":false,"name":"excludeFieldIds","in":"query"},{"schema":{"type":"string","description":"The parameter \"ranges\" is used to represent the coordinates [column, row][] of a selected range in a table. ","example":"[[0, 0], [1, 1]]"},"required":true,"name":"ranges","in":"query"},{"schema":{"type":"string","enum":["rows","columns"],"description":"Types of non-contiguous selections","example":"columns"},"required":false,"name":"type","in":"query"}],"responses":{"200":{"description":"Copy content","content":{"application/json":{"schema":{"type":"object","properties":{"content":{"type":"string"},"header":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}}},"required":["content","header"]}}}}}}},"/table/{tableId}/selection/paste":{"patch":{"description":"Copy operations in tables","tags":["selection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"viewId":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"filterByTql":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"search":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"filterLinkCellCandidate":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"filterLinkCellSelected":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"selectedRecordIds":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"orderBy":{"type":"array","description":"An array of sort objects that specifies how the records should be ordered."},"groupBy":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"collapsedGroupIds":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"excludeFieldIds":{"type":"array","items":{"type":"string"}},"ranges":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"minItems":1,"description":"The parameter \"ranges\" is used to represent the coordinates of a selected range in a table. ","example":[[0,0],[1,1]]},"type":{"type":"string","enum":["rows","columns"],"description":"Types of non-contiguous selections","example":"columns"},"content":{"type":"string","description":"Content to paste","example":"John\tDoe\[email protected]"},"header":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]},"description":"Table header for paste operation","example":[]}},"required":["ranges","content"]}}}},"responses":{"200":{"description":"Paste successfully","content":{"application/json":{"schema":{"type":"object","properties":{"ranges":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2}},"required":["ranges"]}}}}}}},"/table/{tableId}/selection/delete":{"delete":{"description":"Delete the selected data","tags":["selection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"type":"array","items":{"type":"string"}},"required":false,"name":"excludeFieldIds","in":"query"},{"schema":{"type":"string","description":"The parameter \"ranges\" is used to represent the coordinates [column, row][] of a selected range in a table. ","example":"[[0, 0], [1, 1]]"},"required":true,"name":"ranges","in":"query"},{"schema":{"type":"string","enum":["rows","columns"],"description":"Types of non-contiguous selections","example":"columns"},"required":false,"name":"type","in":"query"}],"responses":{"200":{"description":"Successful deletion","content":{"application/json":{"schema":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string"}}},"required":["ids"]}}}}}}},"/table/{tableId}/selection/temporaryPaste":{"patch":{"description":"Paste operation for pre-filled table rows","tags":["selection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"viewId":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"ranges":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"minItems":1,"description":"The parameter \"ranges\" is used to represent the coordinates of a selected range in a table. ","example":[[0,0],[1,1]]},"excludeFieldIds":{"type":"array","items":{"type":"string"}},"content":{"type":"string","description":"Content to paste","example":"John\tDoe\[email protected]"},"header":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]},"description":"Table header for paste operation","example":[]}},"required":["ranges","content"]}}}},"responses":{"200":{"description":"Paste successfully","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."}},"required":["fields"]}}}}}}}},"/table/{tableId}/field/{fieldId}/plan":{"get":{"description":"Generate calculation plan for the field","tags":["plan"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"path"}],"responses":{"200":{"description":"Returns the calculation plan for the field","content":{"application/json":{"schema":{"type":"object","properties":{"estimateTime":{"type":"number"},"graph":{"type":"object","properties":{"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"comboId":{"type":"string"}},"required":["id"]}},"edges":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"target":{"type":"string"},"label":{"type":"string"}},"required":["source","target"]}},"combos":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"}},"required":["id","label"]}}},"required":["nodes","edges","combos"]},"updateCellCount":{"type":"number"}},"required":["estimateTime","updateCellCount"]}}}}}},"put":{"description":"Generate calculation plan for converting the field","tags":["plan"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"name":{"type":"string","minLength":1,"description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"unique":{"type":"boolean","description":"Whether this field is not unique."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"description":{"type":"string","nullable":true,"description":"The description of the field.","example":"this is a summary"},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["foreignTableId","lookupFieldId","linkFieldId"],"description":"The lookup options for field, you need to configure it when isLookup attribute is true or field type is rollup."},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["name"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false}],"description":"The options of the field. The configuration of the field's options depend on the it's specific type."}},"required":["type"]}}}},"responses":{"201":{"description":"Returns the calculation plan","content":{"application/json":{"schema":{"type":"object","properties":{"estimateTime":{"type":"number"},"graph":{"type":"object","properties":{"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"comboId":{"type":"string"}},"required":["id"]}},"edges":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"target":{"type":"string"},"label":{"type":"string"}},"required":["source","target"]}},"combos":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"}},"required":["id","label"]}}},"required":["nodes","edges","combos"]},"updateCellCount":{"type":"number"},"skip":{"type":"boolean"}}}}}}}}},"/table/{tableId}/field/plan":{"post":{"description":"Generate calculation plan for creating the field","tags":["plan"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"name":{"type":"string","minLength":1,"description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"unique":{"type":"boolean","description":"Whether this field is not unique."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"description":{"type":"string","nullable":true,"description":"The description of the field.","example":"this is a summary"},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["foreignTableId","lookupFieldId","linkFieldId"],"description":"The lookup options for field, you need to configure it when isLookup attribute is true or field type is rollup."},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["name"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false}],"description":"The options of the field. The configuration of the field's options depend on the it's specific type."},"id":{"type":"string","description":"The id of the field that start with \"fld\", followed by exactly 16 alphanumeric characters `/^fld[\\da-zA-Z]{16}$/`. It is sometimes useful to specify an id at creation time","example":"fldxxxxxxxxxxxxxxxx"},"order":{"type":"object","properties":{"viewId":{"type":"string","description":"You can only specify order in one view when create field"},"orderIndex":{"type":"number"}},"required":["viewId","orderIndex"]}},"required":["type"]}}}},"responses":{"201":{"description":"Returns the calculation plan for creating the field","content":{"application/json":{"schema":{"type":"object","properties":{"estimateTime":{"type":"number"},"graph":{"type":"object","properties":{"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"comboId":{"type":"string"}},"required":["id"]}},"edges":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"target":{"type":"string"},"label":{"type":"string"}},"required":["source","target"]}},"combos":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"}},"required":["id","label"]}}},"required":["nodes","edges","combos"]},"updateCellCount":{"type":"number"}},"required":["estimateTime","updateCellCount"]}}}}}}},"/attachments/notify/{token}":{"post":{"description":"Get Attachment information","tags":["attachments"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"token","in":"path"},{"schema":{"type":"string"},"required":false,"name":"filename","in":"query"}],"responses":{"201":{"description":"Attachment information","content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string","description":"Token for the uploaded file","example":"xxxxxxxxxxx"},"size":{"type":"number","description":"File size in bytes","example":1024},"url":{"type":"string","description":"URL of the uploaded file","example":"/bucket/xxxxx"},"path":{"type":"string","description":"file path","example":"/table/xxxxxx"},"mimetype":{"type":"string","description":"MIME type of the uploaded file","example":"video/mp4"},"width":{"type":"number","description":"Image width of the uploaded file","example":100},"height":{"type":"number","description":"Image height of the uploaded file","example":100},"presignedUrl":{"type":"string","description":"Preview url"}},"required":["token","size","url","path","mimetype","presignedUrl"]}}}}}}},"/attachments/{token}":{"get":{"description":"Upload attachment","tags":["attachments"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"token","in":"path"},{"schema":{"type":"string","description":"File name for download"},"required":false,"name":"filename","in":"query"}],"responses":{"200":{"description":""}}}},"/attachments/signature":{"post":{"description":"Retrieve upload signature.","tags":["attachments"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contentType":{"type":"string","description":"Mime type","example":"image/png"},"contentLength":{"type":"number","description":"File size","example":123},"expiresIn":{"type":"number","description":"Token expire time, seconds","example":3600},"hash":{"type":"string","description":"File hash","example":"xxxxxxxx"},"type":{"type":"integer","enum":[1,2,3,4,5,6,7],"description":"Type","example":1},"baseId":{"type":"string"}},"required":["contentType","contentLength","type"]}}}},"responses":{"201":{"description":"return the upload URL and the key.","content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","description":"Upload url","example":"https://example.com/attachment/upload"},"uploadMethod":{"type":"string","description":"Upload method","example":"POST"},"token":{"type":"string","description":"Secret key","example":"xxxxxxxx"},"requestHeaders":{"type":"object","additionalProperties":{"nullable":true},"example":{"Content-Type":"image/png"}}},"required":["url","uploadMethod","token","requestHeaders"]}}}}}}},"/attachments/upload/{token}":{"post":{"description":"Upload attachment","tags":["attachments"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"token","in":"path"}],"requestBody":{"description":"upload attachment","required":true,"content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"responses":{"201":{"description":"Upload successful"}}}},"/user/name":{"patch":{"description":"Update user name","tags":["user"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/user/avatar":{"patch":{"description":"Update user avatar","tags":["user"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary"}},"required":["file"]}}}},"responses":{"200":{"description":"Successfully update."}}}},"/user/notify-meta":{"patch":{"description":"Update user notification meta","tags":["user"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"boolean"}}}}}},"responses":{"200":{"description":"Successfully update."}}}},"/auth/user/me":{"get":{"description":"Get user information","tags":["auth"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Successfully retrieved user information","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"avatar":{"type":"string","nullable":true},"email":{"type":"string","format":"email"},"phone":{"type":"string","nullable":true},"notifyMeta":{"type":"object","properties":{"email":{"type":"boolean"}}},"hasPassword":{"type":"boolean"},"isAdmin":{"type":"boolean","nullable":true},"organization":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"isAdmin":{"type":"boolean"}},"required":["id","name"]}},"required":["id","name","email","notifyMeta","hasPassword"]}}}}}}},"/auth/signin":{"post":{"description":"Sign in","tags":["auth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string","format":"email"},"password":{"type":"string","minLength":8,"description":"Minimum 8 chars"}},"required":["email","password"]}}}},"responses":{"201":{"description":"Sign in successfully","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"avatar":{"type":"string","nullable":true},"email":{"type":"string","format":"email"},"phone":{"type":"string","nullable":true},"notifyMeta":{"type":"object","properties":{"email":{"type":"boolean"}}},"hasPassword":{"type":"boolean"},"isAdmin":{"type":"boolean","nullable":true},"organization":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"isAdmin":{"type":"boolean"}},"required":["id","name"]}},"required":["id","name","email","notifyMeta","hasPassword"]}}}}}}},"/auth/signout":{"post":{"description":"Sign out","tags":["auth"],"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Sign out successfully"}}}},"/auth/signup":{"post":{"description":"Sign up","tags":["auth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string","format":"email"},"password":{"type":"string","minLength":8,"description":"Minimum 8 chars"},"defaultSpaceName":{"type":"string"},"refMeta":{"type":"object","properties":{"query":{"type":"string"},"referer":{"type":"string"}}}},"required":["email","password"]}}}},"responses":{"201":{"description":"Sign up and sing in successfully","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"avatar":{"type":"string","nullable":true},"email":{"type":"string","format":"email"},"phone":{"type":"string","nullable":true},"notifyMeta":{"type":"object","properties":{"email":{"type":"boolean"}}},"hasPassword":{"type":"boolean"},"isAdmin":{"type":"boolean","nullable":true},"organization":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"isAdmin":{"type":"boolean"}},"required":["id","name"]}},"required":["id","name","email","notifyMeta","hasPassword"]}}}}}}},"/auth/change-password":{"patch":{"description":"Change password","tags":["auth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"password":{"type":"string","minLength":8,"description":"Minimum 8 chars"},"newPassword":{"type":"string","minLength":8,"description":"Minimum 8 chars"}},"required":["password","newPassword"]}}}},"responses":{"201":{"description":"Change password successfully"}}}},"/auth/send-reset-password-email":{"post":{"description":"Send reset password email","tags":["auth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string","format":"email"}},"required":["email"]}}}},"responses":{"200":{"description":"Successfully sent reset password email"}}}},"/auth/reset-password":{"post":{"description":"Reset password","tags":["auth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"password":{"type":"string","minLength":8,"description":"Minimum 8 chars"},"code":{"type":"string"}},"required":["password","code"]}}}},"responses":{"200":{"description":"Successfully reset password"}}}},"/auth/add-password":{"post":{"description":"Add password","tags":["auth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"password":{"type":"string","minLength":8,"description":"Minimum 8 chars"}},"required":["password"]}}}},"responses":{"200":{"description":"Successfully added password"}}}},"/auth/user":{"get":{"description":"Get user information via access token","tags":["auth"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Successfully retrieved user information","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"avatar":{"type":"string","nullable":true},"email":{"type":"string","format":"email"}},"required":["id","name"]}}}}}}},"/base/{baseId}/connection":{"post":{"description":"Create a db connection url","tags":["db-connection"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"baseId":{"type":"string"}},"required":["baseId"]}}}},"responses":{"201":{"description":"Connection created successfully","content":{"application/json":{"schema":{"type":"object","nullable":true,"properties":{"dsn":{"type":"object","properties":{"driver":{"type":"string"},"host":{"type":"string"},"port":{"type":"number"},"db":{"type":"string"},"user":{"type":"string"},"pass":{"type":"string"},"params":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}}},"required":["driver","host"]},"connection":{"type":"object","properties":{"max":{"type":"number"},"current":{"type":"number"}},"required":["max","current"]},"url":{"type":"string","description":"The URL that can be used to connect to the database"}},"required":["dsn","connection","url"]}}}}}},"delete":{"description":"Delete a db connection","tags":["db-connection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Deleted successfully"}}},"get":{"description":"Get db connection info","tags":["db-connection"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Returns information about a db connection.","content":{"application/json":{"schema":{"type":"object","properties":{"dsn":{"type":"object","properties":{"driver":{"type":"string"},"host":{"type":"string"},"port":{"type":"number"},"db":{"type":"string"},"user":{"type":"string"},"pass":{"type":"string"},"params":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}}},"required":["driver","host"]},"connection":{"type":"object","properties":{"max":{"type":"number"},"current":{"type":"number"}},"required":["max","current"]},"url":{"type":"string","description":"The URL that can be used to connect to the database"}},"required":["dsn","connection","url"]}}}}}}},"/invitation/link/accept":{"post":{"description":"Accept invitation link","tags":["invitation"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"invitationCode":{"type":"string"},"invitationId":{"type":"string"}},"required":["invitationCode","invitationId"]}}}},"responses":{"201":{"description":"Successful response, return the spaceId or baseId of the invitation link.","content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","nullable":true},"baseId":{"type":"string","nullable":true}},"required":["spaceId","baseId"]}}}}}}},"/share/{shareId}/view/auth":{"post":{"description":"share view auth password","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"password":{"type":"string","minLength":3}},"required":["password"]}}}},"responses":{"200":{"description":"Successfully authenticated","content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string"}},"required":["token"]}}}}}}},"/share/{shareId}/view":{"get":{"description":"get share view info","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"}],"responses":{"200":{"description":"share view info","content":{"application/json":{"schema":{"type":"object","properties":{"viewId":{"type":"string"},"tableId":{"type":"string"},"shareId":{"type":"string"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"view":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"createdBy":{"type":"string"},"lastModifiedBy":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["id","name","type","createdBy","createdTime","columnMeta"]},"fields":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]},"description":"first 50 records"},"extra":{"type":"object","properties":{"groupPoints":{"type":"array","nullable":true,"items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"number","enum":[0]},"depth":{"type":"number","maximum":2,"minimum":0},"value":{"nullable":true},"isCollapsed":{"type":"boolean"}},"required":["id","type","depth","isCollapsed"]},{"type":"object","properties":{"type":{"type":"number","enum":[1]},"count":{"type":"number"}},"required":["type","count"]}]},"description":"Group points for the view"},"plugin":{"type":"object","properties":{"pluginId":{"type":"string"},"pluginInstallId":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"storage":{"type":"object","additionalProperties":{"nullable":true}}},"required":["pluginId","pluginInstallId","name"]}}}},"required":["tableId","shareId","fields","records"]}}}}}}},"/share/{shareId}/view/aggregations":{"get":{"description":"Get share view aggregations","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"object","properties":{"count":{"type":"array","items":{"type":"string"}},"empty":{"type":"array","items":{"type":"string"}},"filled":{"type":"array","items":{"type":"string"}},"unique":{"type":"array","items":{"type":"string"}},"max":{"type":"array","items":{"type":"string"}},"min":{"type":"array","items":{"type":"string"}},"sum":{"type":"array","items":{"type":"string"}},"average":{"type":"array","items":{"type":"string"}},"checked":{"type":"array","items":{"type":"string"}},"unChecked":{"type":"array","items":{"type":"string"}},"percentEmpty":{"type":"array","items":{"type":"string"}},"percentFilled":{"type":"array","items":{"type":"string"}},"percentUnique":{"type":"array","items":{"type":"string"}},"percentChecked":{"type":"array","items":{"type":"string"}},"percentUnChecked":{"type":"array","items":{"type":"string"}},"earliestDate":{"type":"array","items":{"type":"string"}},"latestDate":{"type":"array","items":{"type":"string"}},"dateRangeOfDays":{"type":"array","items":{"type":"string"}},"dateRangeOfMonths":{"type":"array","items":{"type":"string"}},"totalAttachmentSize":{"type":"array","items":{"type":"string"}}}},"required":false,"name":"field","in":"query"}],"responses":{"200":{"description":"Returns aggregations list of share view.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["grid","calendar","kanban","form","gallery","gantt","plugin"]},"description":{"type":"string"},"order":{"type":"number"},"options":{"anyOf":[{"type":"object","properties":{"rowHeight":{"type":"string","enum":["short","medium","tall","extraTall","autoFit"],"description":"The row height level of row in view"},"frozenColumnCount":{"type":"number","minimum":0,"description":"The frozen column count in view"}},"additionalProperties":false},{"type":"object","properties":{"stackFieldId":{"type":"string","description":"The field id of the Kanban stack."},"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each Kanban card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit Kanban cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the Kanban cards."},"isEmptyStackHidden":{"type":"boolean","description":"If true, hides empty stacks in the Kanban."}},"additionalProperties":false},{"type":"object","properties":{"coverFieldId":{"type":"string","nullable":true,"description":"The cover field id is a designated attachment field id, the contents of which appear at the top of each gallery card."},"isCoverFit":{"type":"boolean","description":"If true, cover images are resized to fit gallery cards."},"isFieldNameHidden":{"type":"boolean","description":"If true, hides field name in the gallery cards."}},"additionalProperties":false},{"type":"object","properties":{"startDateFieldId":{"type":"string","nullable":true,"description":"The start date field id."},"endDateFieldId":{"type":"string","nullable":true,"description":"The end date field id."},"titleFieldId":{"type":"string","nullable":true,"description":"The title field id."},"colorConfig":{"type":"object","nullable":true,"properties":{"type":{"type":"string","enum":["field","custom"]},"fieldId":{"type":"string","nullable":true,"description":"The color field id."},"color":{"type":"string","nullable":true,"enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"],"description":"The color."}},"required":["type"]}},"additionalProperties":false},{"type":"object","properties":{"coverUrl":{"type":"string","description":"The cover url of the form"},"logoUrl":{"type":"string","description":"The logo url of the form"},"submitLabel":{"type":"string","description":"The submit button text of the form"}},"additionalProperties":false},{"type":"object","properties":{"pluginId":{"type":"string","description":"The plugin id"},"pluginInstallId":{"type":"string","description":"The plugin install id"},"pluginLogo":{"type":"string","description":"The plugin logo"}},"required":["pluginId","pluginInstallId","pluginLogo"],"additionalProperties":false}]},"sort":{"type":"object","nullable":true,"properties":{"sortObjs":{"type":"array","items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"manualSort":{"type":"boolean"}},"required":["sortObjs"]},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"group":{"type":"array","nullable":true,"items":{"type":"object","properties":{"fieldId":{"type":"string","description":"The id of the field."},"order":{"type":"string","enum":["asc","desc"]}},"required":["fieldId","order"]}},"shareId":{"type":"string"},"enableShare":{"type":"boolean"},"shareMeta":{"type":"object","properties":{"allowCopy":{"type":"boolean"},"includeHiddenField":{"type":"boolean"},"password":{"type":"string","minLength":3},"includeRecords":{"type":"boolean"},"submit":{"type":"object","properties":{"allow":{"type":"boolean"},"requireLogin":{"type":"boolean"}}}}},"createdBy":{"type":"string"},"lastModifiedBy":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"columnMeta":{"type":"object","additionalProperties":{"anyOf":[{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"width":{"type":"number","description":"Column width in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."},"statisticFunc":{"type":"string","nullable":true,"enum":["count","empty","filled","unique","max","min","sum","average","checked","unChecked","percentEmpty","percentFilled","percentUnique","percentChecked","percentUnChecked","earliestDate","latestDate","dateRangeOfDays","dateRangeOfMonths","totalAttachmentSize"],"description":"Statistic function of the column in the view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the kanban view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the gallery view."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"visible":{"type":"boolean","description":"If column visible in the view."},"required":{"type":"boolean","description":"If column is required."}},"required":["order"]},{"type":"object","properties":{"order":{"type":"number","description":"Order is a floating number, column will sort by it in the view."},"hidden":{"type":"boolean","description":"If column hidden in the view."}},"required":["order"]}]},"description":"A mapping of view IDs to their corresponding column metadata."},"pluginId":{"type":"string"}},"required":["id","name","type","createdBy","createdTime","columnMeta"]}}}}}}}},"/share/{shareId}/view/row-count":{"get":{"description":"Get row count for the share view","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"}],"responses":{"200":{"description":"Row count for the share view","content":{"application/json":{"schema":{"type":"object","properties":{"rowCount":{"type":"number"}},"required":["rowCount"]}}}}}}},"/share/{shareId}/view/form-submit":{"post":{"description":"share form view submit new record","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"typecast":{"type":"boolean"}},"required":["fields"]}}}},"responses":{"201":{"description":"Successfully submit","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}}}}}},"/share/{shareId}/view/copy":{"get":{"description":"Copy operations in Share view","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"type":"array","items":{"type":"string"}},"required":false,"name":"excludeFieldIds","in":"query"},{"schema":{"type":"string","description":"The parameter \"ranges\" is used to represent the coordinates [column, row][] of a selected range in a table. ","example":"[[0, 0], [1, 1]]"},"required":true,"name":"ranges","in":"query"},{"schema":{"type":"string","enum":["rows","columns"],"description":"Types of non-contiguous selections","example":"columns"},"required":false,"name":"type","in":"query"}],"responses":{"200":{"description":"Copy content","content":{"application/json":{"schema":{"type":"object","properties":{"content":{"type":"string"},"header":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The id of the field."},"name":{"type":"string","description":"The name of the field. can not be duplicated in the table.","example":"Tags"},"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"],"description":"The field types supported by teable.","example":"singleSelect"},"description":{"type":"string","description":"The description of the field.","example":"this is a summary"},"options":{"anyOf":[{"type":"object","properties":{"expression":{"type":"string","enum":["countall({values})","counta({values})","count({values})","sum({values})","max({values})","min({values})","and({values})","or({values})","xor({values})","array_join({values})","array_unique({values})","array_compact({values})","concatenate({values})"]},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","description":"The formula including fields referenced by their IDs. For example, LEFT(4, {Birthday}) input will be returned as LEFT(4, {fldXXX}) via API."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"},"formatting":{"anyOf":[{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}],"description":"Different cell value types are determined based on the results of expression parsing, where numbers, dates, and formatting options are provided"},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}],"description":"According to the results of expression parsing to determine different visual effects, where strings, numbers will provide customized \"show as\""}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"},"defaultValue":{"type":"string","enum":["now"],"description":"Whether the new row is automatically filled with the current time, caveat: the defaultValue is just a flag, it dose not effect the storing value of the record"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"defaultValue":{"type":"boolean"}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"showAs":{"type":"object","properties":{"type":{"type":"string","enum":["url","email","phone"],"description":"can display as url, email or phone in string field with a button to perform the corresponding action, start a phone call, send an email, or open a link in a new tab"}},"required":["type"]},"defaultValue":{"type":"string"}},"additionalProperties":false},{"type":"object","properties":{"icon":{"type":"string","enum":["star","moon","sun","zap","flame","heart","apple","thumb-up"]},"color":{"type":"string","enum":["yellowBright","redBright","tealBright"]},"max":{"type":"integer","maximum":10,"minimum":1}},"required":["icon","color","max"],"additionalProperties":false},{"type":"object","properties":{"isMultiple":{"type":"boolean","description":"Allow adding multiple users"},"shouldNotify":{"type":"boolean","description":"Notify users when their name is added to a cell"},"defaultValue":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["me"]}]}}]}},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{},"additionalProperties":false},{"type":"object","properties":{"baseId":{"type":"string","description":"the base id of the table that this field is linked to, only required for cross base link"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"isOneWay":{"type":"boolean","description":"whether the field is a one-way link, when true, it will not generate a symmetric field, it is generally has better performance"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"symmetricFieldId":{"type":"string","description":"the symmetric field in the foreign table, empty if the field is a one-way link"},"filterByViewId":{"type":"string","nullable":true,"description":"the view id that limits the number of records in the link field"},"visibleFieldIds":{"type":"array","nullable":true,"items":{"type":"string"},"description":"the fields that will be displayed in the link field"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."}},"required":["relationship","foreignTableId","lookupFieldId","fkHostTableName","selfKeyName","foreignKeyName"],"additionalProperties":false},{"type":"object","properties":{"choices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["id","name","color"]}},"defaultValue":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"preventAutoNewOptions":{"type":"boolean"}},"required":["choices"],"additionalProperties":false},{"type":"object","properties":{"formatting":{"anyOf":[{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["decimal"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["percent"]}},"required":["precision","type"]},{"type":"object","properties":{"precision":{"type":"number","maximum":5,"minimum":0},"type":{"type":"string","enum":["currency"]},"symbol":{"type":"string"}},"required":["precision","type","symbol"]}]},"showAs":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["bar","ring"],"description":"can display as bar or ring in number field with single cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]},"showValue":{"type":"boolean","description":"whether to displays the specific value on the graph"},"maxValue":{"type":"number","description":"the value that represents a 100% maximum value, it does not represent a hard limit on the value"}},"required":["type","color","showValue","maxValue"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["bar","line"],"description":"can display as bar or line in number field with multiple cellValue value"},"color":{"type":"string","enum":["blueLight2","blueLight1","blueBright","blue","blueDark1","cyanLight2","cyanLight1","cyanBright","cyan","cyanDark1","grayLight2","grayLight1","grayBright","gray","grayDark1","greenLight2","greenLight1","greenBright","green","greenDark1","orangeLight2","orangeLight1","orangeBright","orange","orangeDark1","pinkLight2","pinkLight1","pinkBright","pink","pinkDark1","purpleLight2","purpleLight1","purpleBright","purple","purpleDark1","redLight2","redLight1","redBright","red","redDark1","tealLight2","tealLight1","tealBright","teal","tealDark1","yellowLight2","yellowLight1","yellowBright","yellow","yellowDark1"]}},"required":["type","color"],"additionalProperties":false}]},"defaultValue":{"type":"number"}},"required":["formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["AUTO_NUMBER()"]}},"required":["expression"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["CREATED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false},{"type":"object","properties":{"expression":{"type":"string","enum":["LAST_MODIFIED_TIME()"]},"formatting":{"type":"object","properties":{"date":{"type":"string","description":"the display formatting of the date."},"time":{"type":"string","enum":["HH:mm","hh:mm A","None"],"description":"the display formatting of the time."},"timeZone":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["date","time","timeZone"],"description":"caveat: the formatting is just a formatter, it dose not effect the storing value of the record"}},"required":["expression","formatting"],"additionalProperties":false}],"description":"The configuration options of the field. The structure of the field's options depend on the field's type."},"isLookup":{"type":"boolean","description":"Whether this field is lookup field. witch means cellValue and [fieldType] is looked up from the linked table."},"lookupOptions":{"type":"object","properties":{"foreignTableId":{"type":"string","description":"the table this field is linked to"},"lookupFieldId":{"type":"string","description":"the field in the foreign table that will be displayed as the current field"},"relationship":{"type":"string","enum":["oneOne","manyMany","oneMany","manyOne"],"description":"describe the relationship from this table to the foreign table"},"fkHostTableName":{"type":"string","description":"the table name for storing keys, in many-to-many relationships, keys are stored in a separate intermediate table; in other relationships, keys are stored on one side as needed"},"selfKeyName":{"type":"string","description":"the name of the field that stores the current table primary key"},"foreignKeyName":{"type":"string","description":"The name of the field that stores the foreign table primary key"},"filter":{"type":"object","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"linkFieldId":{"type":"string","description":"The id of Linked record field to use for lookup"}},"required":["foreignTableId","lookupFieldId","relationship","fkHostTableName","selfKeyName","foreignKeyName","linkFieldId"],"description":"field lookup options."},"notNull":{"type":"boolean","description":"Whether this field is not null."},"unique":{"type":"boolean","description":"Whether this field is not unique."},"isPrimary":{"type":"boolean","description":"Whether this field is primary field."},"isComputed":{"type":"boolean","description":"Whether this field is computed field, you can not modify cellValue in computed field."},"isPending":{"type":"boolean","description":"Whether this field's calculation is pending."},"hasError":{"type":"boolean","description":"Whether This field has a configuration error. Check the fields referenced by this field's formula or configuration."},"cellValueType":{"type":"string","enum":["string","number","boolean","dateTime"],"description":"The cell value type of the field."},"isMultipleCellValue":{"type":"boolean","description":"Whether this field has multiple cell value."},"dbFieldType":{"type":"string","enum":["TEXT","INTEGER","DATETIME","REAL","BLOB","JSON","BOOLEAN"],"description":"The field type of database that cellValue really store."},"dbFieldName":{"type":"string","minLength":1,"pattern":"^\\w{0,63}$","description":"Field(column) name in backend database. Limitation: 1-63 characters, can only contain letters, numbers and underscore, case sensitive, cannot be duplicated with existing db field name in the table."}},"required":["id","name","type","options","cellValueType","dbFieldType","dbFieldName"]}}},"required":["content","header"]}}}}}}},"/share/{shareId}/view/group-points":{"get":{"description":"Get group points for the share view","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"}],"responses":{"200":{"description":"Group points for the share view","content":{"application/json":{"schema":{"type":"array","nullable":true,"items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"number","enum":[0]},"depth":{"type":"number","maximum":2,"minimum":0},"value":{"nullable":true},"isCollapsed":{"type":"boolean"}},"required":["id","type","depth","isCollapsed"]},{"type":"object","properties":{"type":{"type":"number","enum":[1]},"count":{"type":"number"}},"required":["type","count"]}]}}}}}}}},"/share/{shareId}/view/link-records":{"get":{"description":"In a view with a field selector, link the records list of the associated field selector to get the. Linking the desired ones inside the share view should fetch the ones that have already been selected.","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The record count you want to take, maximum is 2000","example":100},"required":false,"name":"take","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The records count you want to skip","example":0},"required":false,"name":"skip","in":"query"},{"schema":{"type":"string"},"required":true,"name":"fieldId","in":"query"},{"schema":{"type":"string"},"required":false,"name":"search","in":"query"},{"schema":{"type":"string","enum":["candidate","selected"],"description":"Only used for plugin views"},"required":false,"name":"type","in":"query"}],"responses":{"200":{"description":"Link records list","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"}},"required":["id"]}}}}}}}},"/share/{shareId}/view/collaborators":{"get":{"description":"View collaborators in a view with a user field selector.","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string"},"required":false,"name":"fieldId","in":"query"}],"responses":{"200":{"description":" view collaborators","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string"},"userName":{"type":"string"},"email":{"type":"string"},"avatar":{"type":"string","nullable":true}},"required":["userId","userName","email"]}}}}}}}},"/share/{shareId}/view/search-count":{"get":{"description":"Get share view search result count with query","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"}],"responses":{"200":{"description":"Share view Search count with query","content":{"application/json":{"schema":{"type":"object","properties":{"count":{"type":"number"}},"required":["count"]}}}}}}},"/share/{shareId}/view/search-index":{"get":{"description":"Get share view record index with search query","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"}],"responses":{"200":{"description":"share view record index with search query","content":{"application/json":{"schema":{"type":"array","nullable":true,"items":{"type":"object","properties":{"index":{"type":"number"},"fieldId":{"type":"string"}},"required":["index","fieldId"]}}}}}}}},"/share/{shareId}/view/calendar-daily-collection":{"get":{"description":"Get calendar daily collection for the share view","tags":["share"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"shareId","in":"path"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"type":"string"},"required":true,"name":"startDate","in":"query"},{"schema":{"type":"string"},"required":true,"name":"endDate","in":"query"},{"schema":{"type":"string"},"required":true,"name":"startDateFieldId","in":"query"},{"schema":{"type":"string"},"required":true,"name":"endDateFieldId","in":"query"}],"responses":{"200":{"description":"Calendar daily collection for the share view","content":{"application/json":{"schema":{"type":"object","properties":{"countMap":{"type":"object","additionalProperties":{"type":"number"}},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The record id."},"name":{"type":"string","description":"primary field value"},"fields":{"type":"object","additionalProperties":{"nullable":true},"description":"Objects with a fields key mapping fieldId or field name to value for that field."},"autoNumber":{"type":"number","description":"Auto number, a unique identifier for each record"},"createdTime":{"type":"string","description":"Created time, date ISO string (new Date().toISOString)."},"lastModifiedTime":{"type":"string","description":"Last modified time, date ISO string (new Date().toISOString)."},"createdBy":{"type":"string","description":"Created by, user name"},"lastModifiedBy":{"type":"string","description":"Last modified by, user name"}},"required":["id","fields"]}}},"required":["countMap","records"]}}}}}}},"/notifications":{"get":{"description":"List a user notification","tags":["notification"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string","enum":["unread","read"]},"required":true,"name":"notifyStates","in":"query"},{"schema":{"type":"string","nullable":true},"required":false,"name":"cursor","in":"query"}],"responses":{"200":{"description":"Successful response, return user notification list.","content":{"application/json":{"schema":{"type":"object","properties":{"notifications":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"notifyIcon":{"anyOf":[{"type":"object","properties":{"iconUrl":{"type":"string"}},"required":["iconUrl"]},{"type":"object","properties":{"userId":{"type":"string"},"userName":{"type":"string"},"userAvatarUrl":{"type":"string","nullable":true}},"required":["userId","userName"]}]},"notifyType":{"type":"string","enum":["system","collaboratorCellTag","collaboratorMultiRowTag","comment"]},"url":{"type":"string"},"message":{"type":"string"},"isRead":{"type":"boolean"},"createdTime":{"type":"string"}},"required":["id","notifyIcon","notifyType","url","message","isRead","createdTime"]}},"nextCursor":{"type":"string","nullable":true}},"required":["notifications"]}}}}}}},"/notifications/{notificationId}/status":{"patch":{"description":"Patch notification status","tags":["notification"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"notificationId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"isRead":{"type":"boolean"}},"required":["isRead"]}}}},"responses":{"200":{"description":"Returns successfully patch notification status"}}}},"/notifications/read-all":{"patch":{"description":"mark all notifications as read","tags":["notification"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns successfully"}}}},"/notifications/unread-count":{"get":{"description":"User notification unread count","tags":["notification"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Successful response, return user notification unread count.","content":{"application/json":{"schema":{"type":"object","properties":{"unreadCount":{"type":"integer","minimum":0}},"required":["unreadCount"]}}}}}}},"/access-token":{"post":{"description":"Create access token","tags":["access-token"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"},"minItems":1},"spaceIds":{"type":"array","nullable":true,"items":{"type":"string"},"minItems":1},"baseIds":{"type":"array","nullable":true,"items":{"type":"string"},"minItems":1},"expiredTime":{"type":"string","example":"2024-03-25"}},"required":["name","scopes","expiredTime"]}}}},"responses":{"201":{"description":"Returns access token.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"spaceIds":{"type":"array","nullable":true,"items":{"type":"string"}},"baseIds":{"type":"array","nullable":true,"items":{"type":"string"}},"expiredTime":{"type":"string"},"token":{"type":"string"},"createdTime":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","name","scopes","expiredTime","token","createdTime","lastUsedTime"]}}}}}},"get":{"description":"List access token","tags":["access-token"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns access token.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"spaceIds":{"type":"array","items":{"type":"string"}},"baseIds":{"type":"array","items":{"type":"string"}},"expiredTime":{"type":"string"},"createdTime":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","name","scopes","expiredTime","createdTime"]}}}}}}}},"/access-token/{id}/refresh":{"post":{"description":"Refresh access token","tags":["access-token"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"expiredTime":{"type":"string"}},"required":["expiredTime"]}}}},"responses":{"200":{"description":"Returns access token.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"expiredTime":{"type":"string"},"token":{"type":"string"}},"required":["id","expiredTime","token"]}}}}}}},"/access-token/{id}":{"delete":{"description":"Delete access token","tags":["access-token"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"responses":{"200":{"description":"Access token deleted."}}},"put":{"description":"Update access token","tags":["access-token"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"spaceIds":{"type":"array","nullable":true,"items":{"type":"string"}},"baseIds":{"type":"array","nullable":true,"items":{"type":"string"}}},"required":["name","scopes"]}}}},"responses":{"200":{"description":"Returns access token.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"spaceIds":{"type":"array","items":{"type":"string"}},"baseIds":{"type":"array","items":{"type":"string"}}},"required":["id","name","scopes"]}}}}}},"get":{"description":"Get access token","tags":["access-token"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"responses":{"200":{"description":"Returns access token.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"spaceIds":{"type":"array","items":{"type":"string"}},"baseIds":{"type":"array","items":{"type":"string"}},"expiredTime":{"type":"string"},"createdTime":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","name","scopes","expiredTime","createdTime"]}}}}}}},"/import/analyze":{"get":{"description":"Get a column info from analyze sheet","tags":["import"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string","format":"uri"},"required":true,"name":"attachmentUrl","in":"query"},{"schema":{"type":"string","enum":["csv","excel"]},"required":true,"name":"fileType","in":"query"}],"responses":{"200":{"description":"Returns columnHeader analyze from file","content":{"application/json":{"schema":{"type":"object","properties":{"worksheets":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string"},"columns":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"]},"name":{"type":"string"}},"required":["type","name"]}}},"required":["name","columns"]}}},"required":["worksheets"]}}}}}}},"/import/{baseId}":{"post":{"description":"create table from file","tags":["import"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"worksheets":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string"},"columns":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["singleLineText","longText","user","attachment","checkbox","multipleSelect","singleSelect","date","number","duration","rating","formula","rollup","count","link","createdTime","lastModifiedTime","createdBy","lastModifiedBy","autoNumber","button"]},"name":{"type":"string"},"sourceColumnIndex":{"type":"number"}},"required":["type","name","sourceColumnIndex"]}},"useFirstRowAsHeader":{"type":"boolean"},"importData":{"type":"boolean"}},"required":["name","columns","useFirstRowAsHeader","importData"]}},"attachmentUrl":{"type":"string","format":"uri"},"fileType":{"type":"string","enum":["csv","excel"]},"notification":{"type":"boolean"},"tz":{"type":"string","description":"The time zone that should be used to format dates"}},"required":["worksheets","attachmentUrl","fileType","tz"]}}}},"responses":{"200":{"description":"Returns data about a table without records","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The id of table."},"name":{"type":"string","description":"The name of the table."},"dbTableName":{"type":"string","pattern":"^[a-z]\\w{0,62}$","description":"Table name in backend database. Limitation: 1-63 characters, start with letter, can only contain letters, numbers and underscore, case insensitive, cannot be duplicated with existing db table name in the base."},"description":{"type":"string","description":"The description of the table."},"icon":{"type":"string","description":"The emoji icon string of the table."},"order":{"type":"number"},"lastModifiedTime":{"type":"string","description":"The last modified time of the table."},"defaultViewId":{"type":"string","description":"The default view id of the table."}},"required":["id","name","dbTableName"]}}}}}}},"/import/{baseId}/{tableId}":{"patch":{"description":"import table inplace","tags":["import"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"attachmentUrl":{"type":"string","format":"uri"},"fileType":{"type":"string","enum":["csv","excel"]},"insertConfig":{"type":"object","properties":{"sourceWorkSheetKey":{"type":"string"},"excludeFirstRow":{"type":"boolean"},"sourceColumnMap":{"type":"object","additionalProperties":{"type":"number","nullable":true}}},"required":["sourceWorkSheetKey","excludeFirstRow","sourceColumnMap"]},"notification":{"type":"boolean"}},"required":["attachmentUrl","fileType","insertConfig"]}}}},"responses":{"200":{"description":"Successfully import table inplace"}}}},"/export/{tableId}":{"get":{"description":"export csv from table","tags":["export"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":false,"name":"viewId","in":"query"}],"responses":{"200":{"description":"Download successful"}}}},"/pin":{"delete":{"description":"Delete pin","tags":["pin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string","enum":["space","base"]},"required":true,"name":"type","in":"query"},{"schema":{"type":"string"},"required":true,"name":"id","in":"query"}],"responses":{"200":{"description":"Delete pin successfully"}}}},"/pin/":{"post":{"description":"Add pin","tags":["pin"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["space","base"]},"id":{"type":"string"}},"required":["type","id"]}}}},"responses":{"201":{"description":"Add pin successfully"}}}},"/pin/list":{"get":{"description":"Get pin list","tags":["pin"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Get pin list, include base pin","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["space","base"]},"order":{"type":"number"}},"required":["id","type","order"]}}}}}}}},"/pin/order":{"put":{"description":"Update pin order","tags":["pin"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["space","base"]},"anchorId":{"type":"string"},"anchorType":{"type":"string","enum":["space","base"]},"position":{"type":"string","enum":["before","after"]}},"required":["id","type","anchorId","anchorType","position"]}}}},"responses":{"200":{"description":"Update pin order successfully"}}}},"/space/{spaceId}/billing/subscription/summary":{"get":{"description":"Retrieves a summary of subscription information for a space","tags":["billing"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Returns a summary of subscription information about a space.","content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"},"status":{"type":"string","enum":["active","canceled","incomplete","incomplete_expired","trialing","past_due","unpaid","paused","seat_limit_exceeded"]},"level":{"type":"string","enum":["free","plus","pro","enterprise"]}},"required":["spaceId","status","level"]}}}}}}},"/billing/subscription/summary":{"get":{"description":"Retrieves a summary of subscription information across all spaces","tags":["billing"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns a summary of subscription information for each space.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"spaceId":{"type":"string"},"status":{"type":"string","enum":["active","canceled","incomplete","incomplete_expired","trialing","past_due","unpaid","paused","seat_limit_exceeded"]},"level":{"type":"string","enum":["free","plus","pro","enterprise"]}},"required":["spaceId","status","level"]}}}}}}}},"/admin/setting":{"get":{"description":"Get the instance settings","tags":["admin"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns the instance settings.","content":{"application/json":{"schema":{"type":"object","properties":{"instanceId":{"type":"string"},"disallowSignUp":{"type":"boolean","nullable":true},"disallowSpaceCreation":{"type":"boolean","nullable":true},"disallowSpaceInvitation":{"type":"boolean","nullable":true}},"required":["instanceId","disallowSignUp","disallowSpaceCreation","disallowSpaceInvitation"]}}}}}},"patch":{"description":"Get the instance settings","tags":["admin"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"disallowSignUp":{"type":"boolean"},"disallowSpaceCreation":{"type":"boolean"},"disallowSpaceInvitation":{"type":"boolean"}}}}}},"responses":{"200":{"description":"Update settings successfully."}}}},"/admin/plugin/{pluginId}/publish":{"patch":{"description":"Publish a plugin","tags":["admin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"pluginId","in":"path"}],"responses":{"200":{"description":"Plugin published successfully."}}}},"/space/{spaceId}/usage":{"get":{"description":"Get usage information for the space","tags":["usage"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"spaceId","in":"path"}],"responses":{"200":{"description":"Returns usage information for the space.","content":{"application/json":{"schema":{"type":"object","properties":{"level":{"type":"string","enum":["free","plus","pro","enterprise"]},"limit":{"type":"object","properties":{"maxRows":{"type":"number"},"maxSizeAttachments":{"type":"number"},"maxNumDatabaseConnections":{"type":"number"},"maxRevisionHistoryDays":{"type":"number"},"maxAutomationHistoryDays":{"type":"number"},"automationEnable":{"type":"boolean"},"auditLogEnable":{"type":"boolean"},"adminPanelEnable":{"type":"boolean"},"rowColoringEnable":{"type":"boolean"},"buttonFieldEnable":{"type":"boolean"},"userGroupEnable":{"type":"boolean"},"advancedExtensionsEnable":{"type":"boolean"},"advancedPermissionsEnable":{"type":"boolean"},"passwordRestrictedSharesEnable":{"type":"boolean"},"authenticationEnable":{"type":"boolean"},"domainVerificationEnable":{"type":"boolean"},"organizationEnable":{"type":"boolean"}},"required":["maxRows","maxSizeAttachments","maxNumDatabaseConnections","maxRevisionHistoryDays","maxAutomationHistoryDays","automationEnable","auditLogEnable","adminPanelEnable","rowColoringEnable","buttonFieldEnable","userGroupEnable","advancedExtensionsEnable","advancedPermissionsEnable","passwordRestrictedSharesEnable","authenticationEnable","domainVerificationEnable","organizationEnable"]}},"required":["level","limit"]}}}}}}},"/instance/usage":{"get":{"description":"Get usage information for the instance","tags":["usage"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns usage information for the instance.","content":{"application/json":{"schema":{"type":"object","properties":{"level":{"type":"string","enum":["free","plus","pro","enterprise"]},"limit":{"type":"object","properties":{"maxRows":{"type":"number"},"maxSizeAttachments":{"type":"number"},"maxNumDatabaseConnections":{"type":"number"},"maxRevisionHistoryDays":{"type":"number"},"maxAutomationHistoryDays":{"type":"number"},"automationEnable":{"type":"boolean"},"auditLogEnable":{"type":"boolean"},"adminPanelEnable":{"type":"boolean"},"rowColoringEnable":{"type":"boolean"},"buttonFieldEnable":{"type":"boolean"},"userGroupEnable":{"type":"boolean"},"advancedExtensionsEnable":{"type":"boolean"},"advancedPermissionsEnable":{"type":"boolean"},"passwordRestrictedSharesEnable":{"type":"boolean"},"authenticationEnable":{"type":"boolean"},"domainVerificationEnable":{"type":"boolean"},"organizationEnable":{"type":"boolean"}},"required":["maxRows","maxSizeAttachments","maxNumDatabaseConnections","maxRevisionHistoryDays","maxAutomationHistoryDays","automationEnable","auditLogEnable","adminPanelEnable","rowColoringEnable","buttonFieldEnable","userGroupEnable","advancedExtensionsEnable","advancedPermissionsEnable","passwordRestrictedSharesEnable","authenticationEnable","domainVerificationEnable","organizationEnable"]}},"required":["level","limit"]}}}}}}},"/base/{baseId}/usage":{"get":{"description":"Get usage information for the base","tags":["usage"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"baseId","in":"path"}],"responses":{"200":{"description":"Returns usage information for the base.","content":{"application/json":{"schema":{"type":"object","properties":{"level":{"type":"string","enum":["free","plus","pro","enterprise"]},"limit":{"type":"object","properties":{"maxRows":{"type":"number"},"maxSizeAttachments":{"type":"number"},"maxNumDatabaseConnections":{"type":"number"},"maxRevisionHistoryDays":{"type":"number"},"maxAutomationHistoryDays":{"type":"number"},"automationEnable":{"type":"boolean"},"auditLogEnable":{"type":"boolean"},"adminPanelEnable":{"type":"boolean"},"rowColoringEnable":{"type":"boolean"},"buttonFieldEnable":{"type":"boolean"},"userGroupEnable":{"type":"boolean"},"advancedExtensionsEnable":{"type":"boolean"},"advancedPermissionsEnable":{"type":"boolean"},"passwordRestrictedSharesEnable":{"type":"boolean"},"authenticationEnable":{"type":"boolean"},"domainVerificationEnable":{"type":"boolean"},"organizationEnable":{"type":"boolean"}},"required":["maxRows","maxSizeAttachments","maxNumDatabaseConnections","maxRevisionHistoryDays","maxAutomationHistoryDays","automationEnable","auditLogEnable","adminPanelEnable","rowColoringEnable","buttonFieldEnable","userGroupEnable","advancedExtensionsEnable","advancedPermissionsEnable","passwordRestrictedSharesEnable","authenticationEnable","domainVerificationEnable","organizationEnable"]}},"required":["level","limit"]}}}}}}},"/oauth/client/{clientId}":{"get":{"description":"Get the OAuth application","tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"clientId","in":"path"}],"responses":{"200":{"description":"Returns the OAuth application","content":{"application/json":{"schema":{"type":"object","properties":{"clientId":{"type":"string"},"name":{"type":"string"},"secrets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"secret":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","secret"]}},"scopes":{"type":"array","items":{"type":"string"}},"logo":{"type":"string","format":"uri"},"homepage":{"type":"string","format":"uri"},"redirectUris":{"type":"array","items":{"type":"string","format":"uri"}}},"required":["clientId","name","homepage","redirectUris"]}}}}}},"delete":{"description":"Delete an OAuth application","tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"clientId","in":"path"}],"responses":{"200":{"description":"OAuth application deleted"}}},"put":{"description":"Update an OAuth application","tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"clientId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"clientId":{"type":"string"},"name":{"type":"string"},"secrets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"secret":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","secret"]}},"scopes":{"type":"array","items":{"type":"string"}},"logo":{"type":"string","format":"uri"},"homepage":{"type":"string","format":"uri"},"redirectUris":{"type":"array","items":{"type":"string","format":"uri"}}},"required":["clientId","name","homepage","redirectUris"]}}}},"responses":{"200":{"description":"Returns the updated OAuth application","content":{"application/json":{"schema":{"type":"object","properties":{"clientId":{"type":"string"},"name":{"type":"string"},"secrets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"secret":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","secret"]}},"scopes":{"type":"array","items":{"type":"string"}},"logo":{"type":"string","format":"uri"},"homepage":{"type":"string","format":"uri"},"redirectUris":{"type":"array","items":{"type":"string","format":"uri"}}},"required":["clientId","name","homepage","redirectUris"]}}}}}}},"/oauth/client":{"post":{"description":"Create a new OAuth application","tags":["oauth"],"security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"homepage":{"type":"string","format":"uri"},"logo":{"type":"string"},"scopes":{"type":"array","items":{"type":"string","enum":["table|create","table|delete","table|export","table|import","table|read","table|update","view|create","view|delete","view|read","view|update","field|create","field|delete","field|read","field|update","record|comment","record|create","record|delete","record|read","record|update","automation|create","automation|delete","automation|read","automation|update","user|email_read"]}},"redirectUris":{"type":"array","items":{"type":"string","format":"uri"},"minItems":1}},"required":["name","homepage","redirectUris"]}}}},"responses":{"201":{"description":"Returns the created OAuth application","content":{"application/json":{"schema":{"type":"object","properties":{"clientId":{"type":"string"},"name":{"type":"string"},"secrets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"secret":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","secret"]}},"scopes":{"type":"array","items":{"type":"string"}},"logo":{"type":"string","format":"uri"},"homepage":{"type":"string","format":"uri"},"redirectUris":{"type":"array","items":{"type":"string","format":"uri"}}},"required":["clientId","name","homepage","redirectUris"]}}}}}},"get":{"description":"Get the list of OAuth applications","tags":["oauth"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns the list of OAuth applications","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"clientId":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"logo":{"type":"string","format":"uri"},"homepage":{"type":"string","format":"uri"}},"required":["clientId","name","homepage"]}}}}}}}},"/oauth/client/{clientId}/secret/{secretId}":{"delete":{"description":"Delete the OAuth secret","tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"secretId","in":"path"}],"responses":{"200":{"description":"OAuth secret deleted"}}}},"/oauth/client/{clientId}/secret":{"post":{"description":"Generate a new OAuth secret","tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"clientId","in":"path"}],"responses":{"201":{"description":"Returns the generated OAuth secret","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"secret":{"type":"string"},"maskedSecret":{"type":"string"},"lastUsedTime":{"type":"string"}},"required":["id","secret","maskedSecret"]}}}}}}},"/oauth/decision/{transactionId}":{"get":{"description":"Get the OAuth application","tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"transactionId","in":"path"}],"responses":{"200":{"description":"Returns the OAuth application","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"homepage":{"type":"string","format":"uri"},"logo":{"type":"string","format":"uri"},"scopes":{"type":"array","items":{"type":"string"}}},"required":["name","homepage"]}}}}}}},"/oauth/client/{clientId}/revoke-access":{"post":{"tags":["oauth"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"clientId","in":"path"}],"responses":{"200":{"description":"Revoke access permission successfully"}}}},"/oauth/client/authorized/list":{"get":{"description":"Get the list of authorized applications","tags":["oauth"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns the list of authorized applications","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"clientId":{"type":"string"},"name":{"type":"string"},"homepage":{"type":"string","format":"uri"},"logo":{"type":"string","format":"uri"},"description":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"lastUsedTime":{"type":"string"},"createdUser":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string","format":"email"}},"required":["name","email"]}},"required":["clientId","name","homepage","createdUser"]}}}}}}}},"/table/{tableId}/undo-redo/undo":{"post":{"description":"Undo the last operation","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"201":{"description":"Returns data about the undo operation.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","enum":["fulfilled","failed","empty"]},"errorMessage":{"type":"string"}},"required":["status"]}}}}}}},"/table/{tableId}/undo-redo/redo":{"post":{"description":"Redo the last operation","tags":["record"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"}],"responses":{"201":{"description":"Returns data about the redo operation.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","enum":["fulfilled","failed","empty"]},"errorMessage":{"type":"string"}},"required":["status"]}}}}}}},"/plugin":{"post":{"description":"Create a plugin","security":[{"bearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":20},"description":{"type":"string","maxLength":150},"detailDesc":{"type":"string","maxLength":3000},"logo":{"type":"string"},"url":{"type":"string","format":"uri"},"helpUrl":{"type":"string","format":"uri"},"positions":{"type":"array","items":{"type":"string","enum":["dashboard","view"]},"minItems":1},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}}},"required":["name","logo","positions"]}}}},"responses":{"201":{"description":"Returns data about the plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"detailDesc":{"type":"string"},"logo":{"type":"string"},"url":{"type":"string"},"helpUrl":{"type":"string"},"positions":{"type":"array","items":{"type":"string","enum":["dashboard","view"]}},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}},"secret":{"type":"string"},"status":{"type":"string","enum":["developing","reviewing","published"]},"pluginUser":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"email":{"type":"string","format":"email"},"avatar":{"type":"string"}},"required":["id","name","email"]},"createdTime":{"type":"string"}},"required":["id","name","logo","positions","secret","status","createdTime"]}}}}}},"get":{"description":"Get plugins","tags":["plugin"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Returns data about the plugins.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"detailDesc":{"type":"string"},"logo":{"type":"string"},"url":{"type":"string"},"helpUrl":{"type":"string"},"positions":{"type":"array","items":{"type":"string","enum":["dashboard","view"]}},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}},"status":{"type":"string","enum":["developing","reviewing","published"]},"pluginUser":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"email":{"type":"string","format":"email"},"avatar":{"type":"string"}},"required":["id","name","email"]},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"}},"required":["id","name","logo","positions","i18n","status","createdTime","lastModifiedTime"]}}}}}}}},"/plugin/{id}":{"delete":{"description":"Delete a plugin","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"responses":{"200":{"description":"Returns no content."}}},"put":{"description":"Update a plugin","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string","maxLength":150},"detailDesc":{"type":"string","maxLength":3000},"url":{"type":"string","format":"uri"},"logo":{"type":"string"},"helpUrl":{"type":"string","format":"uri"},"positions":{"type":"array","items":{"type":"string","enum":["dashboard","view"]},"minItems":1},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}}},"required":["name","logo","positions"]}}}},"responses":{"200":{"description":"Returns data about the plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"detailDesc":{"type":"string"},"logo":{"type":"string"},"url":{"type":"string"},"helpUrl":{"type":"string"},"positions":{"type":"array","items":{"type":"string","enum":["dashboard","view"]}},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}},"secret":{"type":"string"},"status":{"type":"string","enum":["developing","reviewing","published"]},"pluginUser":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"email":{"type":"string","format":"email"},"avatar":{"type":"string"}},"required":["id","name","email"]},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"}},"required":["id","name","logo","positions","secret","status","createdTime","lastModifiedTime"]}}}}}}},"/plugin/{id}/regenerate-secret":{"post":{"description":"Regenerate a plugin secret","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"id","in":"path"}],"responses":{"200":{"description":"Returns data about the plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"secret":{"type":"string"}},"required":["id","secret"]}}}}}}},"/plugin/{pluginId}":{"get":{"description":"Get a plugin","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"pluginId","in":"path"}],"responses":{"200":{"description":"Returns data about the plugin.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"detailDesc":{"type":"string"},"logo":{"type":"string"},"url":{"type":"string"},"helpUrl":{"type":"string"},"positions":{"type":"array","items":{"type":"string","enum":["dashboard","view"]}},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}},"secret":{"type":"string"},"status":{"type":"string","enum":["developing","reviewing","published"]},"pluginUser":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"email":{"type":"string","format":"email"},"avatar":{"type":"string"}},"required":["id","name","email"]},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"}},"required":["id","name","logo","positions","secret","status","createdTime","lastModifiedTime"]}}}}}}},"/plugin/center/list":{"get":{"description":"Get a list of plugins center","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":false,"name":"positions","in":"query"}],"responses":{"200":{"description":"Returns data about the plugin center list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"detailDesc":{"type":"string"},"logo":{"type":"string"},"helpUrl":{"type":"string"},"i18n":{"type":"object","example":{"en":{"title":"Plugin title","description":"Plugin description"},"zh":{"title":"插件标题","description":"插件描述"}}},"url":{"type":"string"},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"createdBy":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"email":{"type":"string","format":"email"},"avatar":{"type":"string"}},"required":["id","name","email"]}},"required":["id","name","logo","createdTime","createdBy"]}}}}}}}},"/plugin/{pluginId}/submit":{"patch":{"description":"Submit a plugin","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"pluginId","in":"path"}],"responses":{"200":{"description":"Plugin submitted successfully."}}}},"/plugin/{pluginId}/token":{"get":{"description":"Get a token","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"pluginId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"baseId":{"type":"string"},"secret":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"authCode":{"type":"string"}},"required":["baseId","secret","scopes","authCode"]}}}},"responses":{"200":{"description":"Returns token.","content":{"application/json":{"schema":{"type":"object","properties":{"accessToken":{"type":"string"},"refreshToken":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"expiresIn":{"type":"number"},"refreshExpiresIn":{"type":"number"}},"required":["accessToken","refreshToken","scopes","expiresIn","refreshExpiresIn"]}}}}}}},"/plugin/{pluginId}/refreshToken":{"post":{"description":"Refresh a token","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"pluginId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"refreshToken":{"type":"string"},"secret":{"type":"string"}},"required":["refreshToken","secret"]}}}},"responses":{"200":{"description":"Returns token.","content":{"application/json":{"schema":{"type":"object","properties":{"accessToken":{"type":"string"},"refreshToken":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"expiresIn":{"type":"number"},"refreshExpiresIn":{"type":"number"}},"required":["accessToken","refreshToken","scopes","expiresIn","refreshExpiresIn"]}}}}}}},"/plugin/{pluginId}/authCode":{"post":{"description":"Get an auth code","tags":["plugin"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"pluginId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"baseId":{"type":"string"}},"required":["baseId"]}}}},"responses":{"200":{"description":"Returns auth code.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string"}},"required":["code"]}}}}}}},"/comment/{tableId}/{recordId}/{commentId}/reaction":{"post":{"description":"create record comment reaction","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"commentId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"reaction":{"type":"string"}},"required":["reaction"]}}}},"responses":{"200":{"description":"Successfully create comment reaction."}}},"delete":{"description":"delete record comment reaction","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"commentId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"reaction":{"type":"string"}},"required":["reaction"]}}}},"responses":{"200":{"description":"Successfully delete comment reaction."}}}},"/comment/{tableId}/{recordId}/{commentId}":{"get":{"description":"Get record comment detail","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Returns the record's comment detail","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"content":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["p"]},"value":{"nullable":true},"children":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["span"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["mention"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["a"]},"value":{"nullable":true},"url":{"type":"string"},"title":{"type":"string"}},"required":["type","url","title"]}]}}},"required":["type","children"]},{"type":"object","properties":{"type":{"type":"string","enum":["img"]},"value":{"nullable":true},"path":{"type":"string"},"width":{"type":"number"}},"required":["type","path"]}]}},"createdBy":{"type":"string"},"reaction":{"type":"array","nullable":true,"items":{"type":"object","properties":{"reaction":{"type":"string"},"user":{"type":"array","items":{"type":"string"}}},"required":["reaction","user"]}},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"quoteId":{"type":"string"},"deletedTime":{"type":"string"}},"required":["id","content","createdBy","createdTime","lastModifiedTime"]}}}}}}},"patch":{"description":"update record comment","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"commentId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"content":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["p"]},"value":{"nullable":true},"children":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["span"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["mention"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["a"]},"value":{"nullable":true},"url":{"type":"string"},"title":{"type":"string"}},"required":["type","url","title"]}]}}},"required":["type","children"]},{"type":"object","properties":{"type":{"type":"string","enum":["img"]},"value":{"nullable":true},"path":{"type":"string"},"width":{"type":"number"}},"required":["type","path"]}]}}},"required":["content"]}}}},"responses":{"200":{"description":"Successfully update comment."}}},"delete":{"description":"delete record comment","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"commentId","in":"path"}],"responses":{"200":{"description":"Successfully delete comment."}}}},"/comment/{tableId}/{recordId}/list":{"get":{"description":"Get record comment list","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The record count you want to take, maximum is 1000","example":20},"required":false,"name":"take","in":"query"},{"schema":{"type":"string","nullable":true},"required":false,"name":"cursor","in":"query"},{"schema":{"anyOf":[{"type":"boolean"},{"type":"string","enum":["true","false"]}]},"required":false,"name":"includeCursor","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["forward"]},{"type":"string","enum":["backward"]}]},"required":false,"name":"direction","in":"query"}],"responses":{"200":{"description":"Returns the list of record's comment","content":{"application/json":{"schema":{"type":"object","properties":{"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"content":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["p"]},"value":{"nullable":true},"children":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["span"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["mention"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["a"]},"value":{"nullable":true},"url":{"type":"string"},"title":{"type":"string"}},"required":["type","url","title"]}]}}},"required":["type","children"]},{"type":"object","properties":{"type":{"type":"string","enum":["img"]},"value":{"nullable":true},"path":{"type":"string"},"width":{"type":"number"}},"required":["type","path"]}]}},"createdBy":{"type":"string"},"reaction":{"type":"array","nullable":true,"items":{"type":"object","properties":{"reaction":{"type":"string"},"user":{"type":"array","items":{"type":"string"}}},"required":["reaction","user"]}},"createdTime":{"type":"string"},"lastModifiedTime":{"type":"string"},"quoteId":{"type":"string"},"deletedTime":{"type":"string"}},"required":["id","content","createdBy","createdTime","lastModifiedTime"]}},"nextCursor":{"type":"string","nullable":true}},"required":["comments"]}}}}}}},"/comment/{tableId}/{recordId}/create":{"post":{"description":"create record comment","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"quoteId":{"type":"string","nullable":true},"content":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["p"]},"value":{"nullable":true},"children":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["span"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["mention"]},"value":{"type":"string"}},"required":["type","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["a"]},"value":{"nullable":true},"url":{"type":"string"},"title":{"type":"string"}},"required":["type","url","title"]}]}}},"required":["type","children"]},{"type":"object","properties":{"type":{"type":"string","enum":["img"]},"value":{"nullable":true},"path":{"type":"string"},"width":{"type":"number"}},"required":["type","path"]}]}}},"required":["content"]}}}},"responses":{"200":{"description":"Successfully create comment."}}}},"/comment/{tableId}/{recordId}/subscribe":{"post":{"description":"subscribe record comment's active","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Successfully subscribe record comment."}}},"delete":{"description":"unsubscribe record comment","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Successfully subscribe record comment."}}},"get":{"description":"get record comment subscribe detail","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Successfully get record comment subscribe detail.","content":{"application/json":{"schema":{"type":"object","nullable":true,"properties":{"tableId":{"type":"string"},"recordId":{"type":"string"},"createdBy":{"type":"string"}},"required":["tableId","recordId","createdBy"]}}}}}}},"/comment/{tableId}/{recordId}/attachment/{path}":{"get":{"description":"Get record comment attachment url","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"string"},"required":true,"name":"recordId","in":"path"}],"responses":{"200":{"description":"Returns the record's comment attachment url","content":{"application/json":{"schema":{"type":"string"}}}}}}},"/comment/{tableId}/count":{"get":{"description":"Get record comment counts by query","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"array","items":{"type":"string"},"description":"If you want to get only some fields, pass in this parameter, otherwise all visible fields will be obtained, The parameter value depends on the specified fieldKeyType to determine whether it is name or id"},"required":false,"name":"projection","in":"query"},{"schema":{"type":"string","enum":["json","text"],"default":"json","description":"Define the return value formate, you can set it to text if you only need simple string value"},"required":false,"name":"cellFormat","in":"query"},{"schema":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"required":false,"name":"fieldKeyType","in":"query"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The record count you want to take, maximum is 2000","example":100},"required":false,"name":"take","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The records count you want to skip","example":0},"required":false,"name":"skip","in":"query"}],"responses":{"200":{"description":"Returns the comment counts by query","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"recordId":{"type":"string"},"count":{"type":"number"}},"required":["recordId","count"]}}}}}}}},"/comment/{tableId}/{recordId}/count":{"get":{"description":"Get record comment count","tags":["comment"],"security":[{"bearerAuth":[]}],"parameters":[{"schema":{"type":"string"},"required":true,"name":"tableId","in":"path"},{"schema":{"type":"array","items":{"type":"string"},"description":"If you want to get only some fields, pass in this parameter, otherwise all visible fields will be obtained, The parameter value depends on the specified fieldKeyType to determine whether it is name or id"},"required":false,"name":"projection","in":"query"},{"schema":{"type":"string","enum":["json","text"],"default":"json","description":"Define the return value formate, you can set it to text if you only need simple string value"},"required":false,"name":"cellFormat","in":"query"},{"schema":{"type":"string","enum":["id","name"],"default":"name","description":"Define the key type of record.fields[key], You can click \"systemInfo\" in the field edit box to get fieldId or enter the table design screen with all the field details"},"required":false,"name":"fieldKeyType","in":"query"},{"schema":{"type":"string","description":"Set the view you want to fetch, default is first view. result will filter and sort by view options.","example":"viwXXXXXXX"},"required":false,"name":"viewId","in":"query"},{"schema":{"type":"string","description":"\n# Teable Query Language\n\nTeable Query Language is a specialized language used for data querying in the Teable project. It allows you to filter and retrieve data based on specific conditions and logic.\n\n## What is Teable Query Language?\n\nTeable Query Language is a simple yet powerful language that enables you to create complex query conditions to meet your data querying needs. With Teable Query Language, you can easily specify fields, operators, and values to define query criteria.\n\n## Syntax and Usage\n\nTeable Query Language supports the following syntax and usage:\n\n### Field Querying\n\nYou can use `{field}` to represent the field you want to query. For example, `{name}` represents a field named \"name\".\n\n### Operators\n\nTeable Query Language supports the following operators:\n\n- `=`: Equality operator used to compare fields and values for equality.\n- `<`: Less than operator used to compare if a field is less than a given value.\n- `>`: Greater than operator used to compare if a field is greater than a given value.\n- `<=`: Less than or equal to operator used to compare if a field is less than or equal to a given value.\n- `>=`: Greater than or equal to operator used to compare if a field is greater than or equal to a given value.\n- `!=`: Not equal to operator used to compare if a field and value are not equal.\n- `BETWEEN`: This operator is used to filter fields that fall within a certain range. It requires two values to define the range.\n- `LIKE`: This operator is used for pattern matching. It's typically used with wildcards (%) to search for a specified pattern in a field.\n- `IN`: This operator is used to filter fields against multiple possible values. It requires a list of comma-separated values.\n\n### Examples\n\nHere are some examples of Teable Query Language:\n\n- `{status} = 'Completed'`: Queries data where the status is \"Completed\".\n- `{priority} > 5`: Queries data where the priority is greater than 5.\n- `{category} != 'Personal'`: Queries data where the category is not \"Personal\".\n- `{age} BETWEEN 20 AND 30`: Queries data where the age is between 20 and 30.\n- `{name} LIKE 'John%'`: Queries data where the name starts with \"John\".\n- `{status} IN ('Completed', 'In Progress')`: Queries data where the status is either \"Completed\" or \"In Progress\".\n","example":"{field} = 'Completed' AND {field} > 5"},"required":false,"name":"filterByTql","in":"query"},{"schema":{"type":"string","description":"A filter object used to filter results. It allows complex query conditions based on fields, operators, and values. For a more convenient experience, filterByTql is recommended, notice: if filterByTql is provided, current filter option will not take effect."},"required":false,"name":"filter","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":1},{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string"},{"type":"boolean"}]}]},"minItems":3,"maxItems":3}],"default":["searchValue","fieldIdOrName",false],"description":"Search for records that match the specified field and value"},"required":false,"name":"search","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out the records that can be selected by a given link cell from the relational table. For example, if the specified field is one to many or one to one relationship, recordId for which the field has already been selected will not appear.","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellCandidate","in":"query"},{"schema":{"anyOf":[{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2},{"type":"string"}],"description":"Filter out selected records based on this link cell from the relational table. Note that viewId, filter, and orderBy will not take effect in this case because selected records has it own order. Ignoring recordId gets all the selected records for the field","example":["fldXXXXXXX","recXXXXXXX"]},"required":false,"name":"filterLinkCellSelected","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"Filter selected records by record ids"},"required":false,"name":"selectedRecordIds","in":"query"},{"schema":{"type":"string","description":"An array of sort objects that specifies how the records should be ordered."},"required":false,"name":"orderBy","in":"query"},{"schema":{"type":"string","description":"An array of group objects that specifies how the records should be grouped."},"required":false,"name":"groupBy","in":"query"},{"schema":{"type":"array","items":{"type":"string"},"description":"An array of group ids that specifies which groups are collapsed"},"required":false,"name":"collapsedGroupIds","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The record count you want to take, maximum is 2000","example":100},"required":false,"name":"take","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"The records count you want to skip","example":0},"required":false,"name":"skip","in":"query"}],"responses":{"200":{"description":"Returns the comment count by query","content":{"application/json":{"schema":{"type":"object","properties":{"count":{"type":"number"}},"required":["count"]}}}}}}},"/organization/me":{"get":{"description":"Get my organization","tags":["organization"],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Get my organization successfully","content":{"application/json":{"schema":{"type":"object","nullable":true,"properties":{"id":{"type":"string"},"name":{"type":"string"},"isAdmin":{"type":"boolean"}},"required":["id","name","isAdmin"]}}}}}}}}}