{"id":18365912,"url":"https://github.com/prasoonthakur8/graph-api-token-manager","last_synced_at":"2025-04-10T13:29:10.541Z","repository":{"id":220883016,"uuid":"629741851","full_name":"prasoonthakur8/graph-api-token-manager","owner":"prasoonthakur8","description":"https://www.npmjs.com/package/graph-api-token-manager Graph API Token Manager is a Node.js package that provides functionality to manage Facebook Graph API tokens. It can be used to exchange a code for an access token and to exchange a short-lived access token for a long-lived access token.","archived":false,"fork":false,"pushed_at":"2023-04-19T00:05:49.000Z","size":3,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-05T23:15:02.197Z","etag":null,"topics":["graph-api"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/graph-api-token-manager","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prasoonthakur8.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2023-04-18T23:57:26.000Z","updated_at":"2023-11-30T23:54:11.000Z","dependencies_parsed_at":"2024-02-05T00:23:39.190Z","dependency_job_id":"b47d1a75-b02b-4264-95ca-1a54bcf36de9","html_url":"https://github.com/prasoonthakur8/graph-api-token-manager","commit_stats":null,"previous_names":["prasoonthakur8/graph-api-token-manager"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prasoonthakur8%2Fgraph-api-token-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prasoonthakur8%2Fgraph-api-token-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prasoonthakur8%2Fgraph-api-token-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prasoonthakur8%2Fgraph-api-token-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prasoonthakur8","download_url":"https://codeload.github.com/prasoonthakur8/graph-api-token-manager/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231035264,"owners_count":18318235,"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":["graph-api"],"created_at":"2024-11-05T23:15:16.917Z","updated_at":"2024-12-24T00:41:24.584Z","avatar_url":"https://github.com/prasoonthakur8.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Graph API Token Manager\nGraph API Token Manager is a Node.js package that provides functionality to manage Facebook Graph API tokens. It can be used to exchange a code for an access token and to exchange a short-lived access token for a long-lived access token.\n\n## Installation\nYou can install the package using npm:\n\n```bash\nnpm install graph-api-token-manager\n```\n\n## Usage\nFirst, create a new instance of the TokenManager class:\n\n```javascript\nconst TokenManager = require('graph-api-token-manager');\nconst tokenManager = new TokenManager();\n```\n\nExchanging a code for an access token\nTo exchange a code for an access token, use the exchangeCodeForAccessToken method:\n\n```javascript\nconst code = 'your_obtained_code';\nconst longLivedAccessToken = await tokenManager.exchangeCodeForAccessToken(code);\nconsole.log(`Long-lived access token: ${longLivedAccessToken}`);\n```\n\nExchanging a short-lived access token for a long-lived access token\nTo exchange a short-lived access token for a long-lived access token, use the exchangeShortLivedForLongLivedAccessToken method:\n\n```javascript\nconst shortLivedAccessToken = 'your_short_lived_access_token';\nconst longLivedAccessToken = await tokenManager.exchangeShortLivedForLongLivedAccessToken(shortLivedAccessToken);\nconsole.log(`Long-lived access token: ${longLivedAccessToken}`);\n```\n\n## Example\nHere is an example of how to use the package:\n\n```javascript\nconst TokenManager = require('graph-api-token-manager');\n\n(async () =\u003e {\n  try {\n    const tokenManager = new TokenManager();\n\n    // Exchange a code for an access token\n    const code = 'your_obtained_code';\n    const longLivedAccessToken = await tokenManager.exchangeCodeForAccessToken(code);\n    console.log(`Long-lived access token: ${longLivedAccessToken}`);\n\n    // Exchange a short-lived access token for a long-lived access token\n    const shortLivedAccessToken = 'your_short_lived_access_token';\n    const longLivedAccessToken2 = await tokenManager.exchangeShortLivedForLongLivedAccessToken(shortLivedAccessToken);\n    console.log(`Long-lived access token: ${longLivedAccessToken2}`);\n  } catch (error) {\n    console.error(`Error: ${error.message}`);\n  }\n})();\n```\n\n## Configuration\nThe package requires the following environment variables to be set:\n\n```\nAPP_ID: Your Facebook app ID.\nAPP_SECRET: Your Facebook app secret.\nREDIRECT_URI: The URI that Facebook should redirect to after the user authorizes your app.\nCopy the .env.example file to .env and set the values appropriately:\n```\n\n```bash\ncp .env.example .env\n```\n\n## License\nThis package is licensed under the MIT License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprasoonthakur8%2Fgraph-api-token-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprasoonthakur8%2Fgraph-api-token-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprasoonthakur8%2Fgraph-api-token-manager/lists"}