Airtable API examples & templates
Use these vals as a playground to view and fork Airtable API examples and templates on Val Town. Run any example below or find templates that can be used as a pre-built solution.
yawnxyz
dobby
Script
Simple wrapper class around valtown's sqlite https://www.val.town/v/yawnxyz/dobby // Example usage:
const dobby = new Dobby("myDatabase", [
{ name: "id", type: "INTEGER", primaryKey: true },
{ name: "name", type: "TEXT", notNull: true },
{ name: "age", type: "INTEGER" },
{ name: "balance", type: "REAL" },
]);
await dobby.createDatabase();
// Insert some sample data
await dobby.insert({ id: 1, name: "John Doe", age: 30, balance: 1000.50 });
await dobby.insert({ id: 2, name: "Jane Smith", age: 25, balance: 2000.75 });
await dobby.insert({ id: 3, name: "Bob Johnson", age: 40, balance: 1500.25 });
// Filter examples
const results1 = await dobby.filter({ age: { gt: 25 } });
console.log("Users older than 25:", results1);
const results2 = await dobby.filter({ name: { like: '%John%' } });
console.log("Users with 'John' in their name:", results2);
const results3 = await dobby.filter({ balance: { between: [1000, 2000] } });
console.log("Users with balance between 1000 and 2000:", results3);
const results4 = await dobby.filter({ age: { in: [25, 30, 35] } });
console.log("Users aged 25, 30, or 35:", results4);
const results5 = await dobby.filter({ name: { ne: 'John Doe' } }, { limit: 2 });
console.log("Up to 2 users not named John Doe:", results5);
// Search examples
const searchResults1 = await dobby.search("name", "John");
console.log("Users with 'John' in their name:", searchResults1);
const searchResults2 = await dobby.search("name", "son", { limit: 1 });
console.log("First user with 'son' in their name:", searchResults2);
// You can search in any text column
const searchResults3 = await dobby.search("age", "3");
console.log("Users with '3' in their age:", searchResults3);
// Example of using the new dropDatabase function
await dropDatabase("myDatabase");
0
tmcw
devstats
HTTP
Developer Statistics This val lets you post statistics from your GitHub Actions runs to build charts of change over time. We do this by having a step at the end of our actions run like this: - name: devstats
run: |
curl -X "POST" "https://tmcw-devstats.web.val.run/" \
-H 'Authorization: Bearer ${{ secrets.DEVSTATS_TOKEN }}' \
-H 'Content-Type: application/json; charset=utf-8' \
-d $"{ \"name\": \"node_modules_kb\", \"value\": $(du -sk node_modules | awk '{print $1}') }" And setting a DEVSTATS_TOKEN value, which could be any short random value, both in Val Town environment variables
and as a secret in your GitHub Actions configuration. Currently the name you attach to a statistic can be anything, and the value is expected to be a number.
1