diff --git a/components/airtable_oauth/actions/list-bases/list-bases.mjs b/components/airtable_oauth/actions/list-bases/list-bases.mjs new file mode 100644 index 0000000000000..9388fad7e30f5 --- /dev/null +++ b/components/airtable_oauth/actions/list-bases/list-bases.mjs @@ -0,0 +1,23 @@ +import airtable from "../../airtable_oauth.app.mjs"; + +export default { + key: "airtable_oauth-list-bases", + name: "List Bases", + description: + "Get the list of bases that can be accessed. [See the documentation](https://airtable.com/developers/web/api/list-bases)", + type: "action", + version: "0.0.1", + props: { + airtable, + }, + async run({ $ }) { + const { bases } = await this.airtable.listBases({ + $, + }); + $.export( + "$summary", + `Successfully retrieved ${bases.length} bases`, + ); + return bases; + }, +}; diff --git a/components/airtable_oauth/actions/list-tables/list-tables.mjs b/components/airtable_oauth/actions/list-tables/list-tables.mjs new file mode 100644 index 0000000000000..df41d8fde2622 --- /dev/null +++ b/components/airtable_oauth/actions/list-tables/list-tables.mjs @@ -0,0 +1,30 @@ +import airtable from "../../airtable_oauth.app.mjs"; + +export default { + key: "airtable_oauth-list-tables", + name: "List Tables", + description: + "Get a list of tables in the selected base. [See the documentation](https://airtable.com/developers/web/api/get-base-schema)", + type: "action", + version: "0.0.1", + props: { + airtable, + baseId: { + propDefinition: [ + airtable, + "baseId", + ], + }, + }, + async run({ $ }) { + const { tables } = await this.airtable.listTables({ + $, + baseId: this.baseId, + }); + $.export( + "$summary", + `Successfully retrieved ${tables.length} tables`, + ); + return tables; + }, +}; diff --git a/components/airtable_oauth/package.json b/components/airtable_oauth/package.json index 83c0e435447c3..cf43461a91a1a 100644 --- a/components/airtable_oauth/package.json +++ b/components/airtable_oauth/package.json @@ -1,6 +1,6 @@ { "name": "@pipedream/airtable_oauth", - "version": "0.4.4", + "version": "0.5.0", "description": "Pipedream Airtable (OAuth) Components", "main": "airtable_oauth.app.mjs", "keywords": [