fieldbook / api-docs Goto Github PK
View Code? Open in Web Editor NEWDocumentation for Fieldbook's API.
Documentation for Fieldbook's API.
non-related issue by accident. please disregard.
e.g. I have a sheet for "Mentors". Mentors can be either grouped by the organisation they belong to, their field of expertise, or the themes they're related to.
I can achieve this in the UI by grouping and sorting by a particular column or columns - it would be very nice to expose these same views over the API.
Hi,
First of all - great product you guys are building - I'm certainly curious what I can get done with it.
I had a few questions regarding the API:
Thanks
Would be great to have an updated_at
of some sort for items. Either as a timestamp, or a counter, or something else.
It would be useful to be able to receive updates via webhook when a change is made to a sheet.
Hi,
I'm trying to delete a record with the API, following the docs here. They just say to call DELETE .../book/sheet/record but I get a 400 response from the API stating 'invalid json, empty body'... so is there some json I should also be providing?
I would expect a field object to also contain a linkedSheet
property (or something similar) which is the id of sheet this field is linked to, if fieldType=link.
I've updated the docs to illustrate what I want:
GET https://api.fieldbook.com/v1/sheets/:sheet_id/fields
Lists fields in a sheet. The response is an array of objects, each with:
key
: permanent field id, unique only within a sheetname
: display name for the fieldslug
: field slug used in reading/writing records via the main APIfieldType
: data, link or formulainputType
: data input type, if fieldType=datalinkedSheet
: id of the sheet this field is linked to, if fieldType=linkrequired
: boolean, may be omitted if falseenum
: for pick list fields, this is the choice list in order...
Example:
$ curl -u $KEY:$SECRET https://api.fieldbook.com/v1/sheets/58e1a67f5662a603001916ed/fields
Response (HTTP 200 OK):
[
{
"key": "f0",
"name": "Name",
"required": true,
"slug": "name",
"fieldType": "data",
"inputType": "generic"
},
{
"key": "f1",
"name": "Description",
"slug": "description",
"fieldType": "data",
"inputType": "text"
},
{
"key": "f2",
"name": "Price",
"slug": "price",
"fieldType": "data",
"inputType": "currency"
},
{
"key": "f3",
"name": "Status",
"slug": "status",
"fieldType": "data",
"inputType": "picklist",
"enum": [
"Available",
"Out of stock",
"Discontinued"
]
},
{
"key": "f4",
"name": "Line items",
"slug": "line_items",
"fieldType": "link",
"linkedSheet":"58e1ac185662a6030019170e"
}
]
Hi @jasoncrawford
I have a use case where I use Fieldbook as backend UI and store. I pull content from a Book via API successfully (using axios) and sync into the website database. In my sheet I have an Image column. I need to upload the image from the sheet to Cloudinary.
As you'd see below, I pass image.url
- url received in the sheet column - but it fails. I notice that when I paste the same url in browser, it goes through redirect with some kind of access attached to it. I am guessing this is to keep sheet content secure. How do I go about it? Any ideas will help.
Cloudinary.uploader.upload(image.url, Meteor.bindEnvironment(function(res) {
if (!res.error) {
Items.update({
_id: foundItem._id
}, {
$push: {
photos: res
}
});
done({}, {
success: true,
message: image.name + ' uploaded successfully.'
});
} else {
console.log(res.error);
done({}, {
success: false,
message: image.name + ' failed to upload.'
});
}
}));
});
When pulling in a sheet that has linked sheets it would be pretty nice to be able to pass a flag to include the full data for the relations instead of just an ID. To get around this currently I have to pull down the "main" sheet and then loop over all items, calling the API for each relation ID.
There are a couple of mentions in the API docs about future support for returning formula data in responses:
The API doesn't yet support formulas. We'll serve up your data, but if you want to do calculations you'll have to do them yourself for now.
Any idea when this might be implemented?
It'd be great to add new fields to a sheet using the API. This would, ideally, be done in one of two ways:
This enables templates or importing data without having to manually set up the sheet structure. Eg - imagine an integration that lets someone import their CRM into a sheet. Currently, they'd need to manually create each column, then do the import.
It would be great to get access to column names and more metadata of sheets.
Is it possible to send a request to /books and return a list of all books in an account?
Some APIs support this way of querying a resource to return based on any matches in a given list:
posts?name[]=Karl&name[]=Noam
There is also posts?name=Karl,Noam
.
It would be great to query by an array or comma-separated list. I imagine this can be done through a codelet right now, however, this would be tremendously useful!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.