{"id":19258773,"url":"https://github.com/teableio/airtable2teable","last_synced_at":"2025-04-21T15:31:39.740Z","repository":{"id":228035560,"uuid":"764029139","full_name":"teableio/airtable2teable","owner":"teableio","description":"migrate from airtable","archived":false,"fork":false,"pushed_at":"2024-12-03T07:35:00.000Z","size":635,"stargazers_count":4,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-16T04:34:59.768Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/teableio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-27T10:59:22.000Z","updated_at":"2025-02-28T12:05:48.000Z","dependencies_parsed_at":"2024-12-03T08:35:24.855Z","dependency_job_id":null,"html_url":"https://github.com/teableio/airtable2teable","commit_stats":null,"previous_names":["teableio/airtable2teable"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teableio%2Fairtable2teable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teableio%2Fairtable2teable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teableio%2Fairtable2teable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teableio%2Fairtable2teable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/teableio","download_url":"https://codeload.github.com/teableio/airtable2teable/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250080690,"owners_count":21371548,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T19:14:20.013Z","updated_at":"2025-04-21T15:31:39.324Z","avatar_url":"https://github.com/teableio.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# airtable2teable\n\nThe data pipeline from airtable to teable.\n\n## Prepare\n\nAirtable's API uses token-based authentication, allowing users to authenticate API requests by inputting their tokens\ninto the HTTP authorization bearer token header.\n\nTokens can only access API endpoints covered by the scopes granted to them. Tokens serve as the account of the user who\ngrants access, with the following limitations:\n\n- Scopes: What actions the token can perform.\n- Resources/access: What bases and workspace the token can access. Tokens can be granted access to individual—or\n  all—bases/workspaces. These can be listed using the list bases endpoint.\n\nTo import airtable Base data into a teable Workspace, the token requires the following\nScope: `data.records:read`, `schema.bases:read`.\n\n[Teable - Access Token](https://help.teable.io/developer/api/access-token)\n\n## Quick Start\n\n### Command\n\n```shell\nnpm install -g @teatool/cmd\n\nnpx teatool base:migrate --from \u003cAIRTABLE_BASE_ID\u003e --to \u003cTEABLE_SPACE_ID\u003e [--baseUrl \u003cBASE_URL\u003e]\nAiratable Token: \u003cAIRTABLE_TOKEN\u003e\nTeable Token: \u003cTEABLE_TOKEN\u003e\n```\n\n### GUI\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimage src=\"./assets/success.png\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimage src=\"./assets/error.png\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## Dev\n\n```shell\npnpm run build\n\ncd .\\packages\\bin\n\n# windows\n.\\bin\\dev.cmd base:migrate --from \u003cAIRTABLE_BASE_ID\u003e --to \u003cTEABLE_SPACE_ID\u003e [--baseUrl \u003cBASE_URL\u003e]\nAiratable Token: \u003cAIRTABLE_TOKEN\u003e\nTeable Token: \u003cTEABLE_TOKEN\u003e\n\n# linux\n./bin/dev.js base:migrate --from \u003cAIRTABLE_BASE_ID\u003e --to \u003cTEABLE_SPACE_ID\u003e [--baseUrl \u003cBASE_URL\u003e]\nAiratable Token: \u003cAIRTABLE_TOKEN\u003e\nTeable Token: \u003cTEABLE_TOKEN\u003e\n```\n\n## Reporting Issues\n\nIf you encounter any problems while using this tool, please open an issue in our GitHub repository. When reporting an issue, it's helpful to provide a minimal, reproducible example. This allows us to better understand and address the problem. Your detailed feedback helps improve the tool for everyone.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteableio%2Fairtable2teable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteableio%2Fairtable2teable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteableio%2Fairtable2teable/lists"}