{"id":19563326,"url":"https://github.com/jpvillaisaza/pocket-haskell","last_synced_at":"2025-04-27T00:32:10.706Z","repository":{"id":56874952,"uuid":"66874210","full_name":"jpvillaisaza/pocket-haskell","owner":"jpvillaisaza","description":"Haskell bindings for the Pocket API","archived":false,"fork":false,"pushed_at":"2020-05-30T20:02:39.000Z","size":20,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-15T19:04:49.083Z","etag":null,"topics":["haskell","pocket","pocket-api"],"latest_commit_sha":null,"homepage":"","language":"Haskell","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/jpvillaisaza.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-08-29T19:30:36.000Z","updated_at":"2020-05-30T20:02:41.000Z","dependencies_parsed_at":"2022-08-20T10:40:35.299Z","dependency_job_id":null,"html_url":"https://github.com/jpvillaisaza/pocket-haskell","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpvillaisaza%2Fpocket-haskell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpvillaisaza%2Fpocket-haskell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpvillaisaza%2Fpocket-haskell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpvillaisaza%2Fpocket-haskell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jpvillaisaza","download_url":"https://codeload.github.com/jpvillaisaza/pocket-haskell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251072279,"owners_count":21532004,"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":["haskell","pocket","pocket-api"],"created_at":"2024-11-11T05:17:25.984Z","updated_at":"2025-04-27T00:32:10.435Z","avatar_url":"https://github.com/jpvillaisaza.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Haskell bindings for the Pocket API\n\nSee [Pocket][pocket] and the [Pocket API][pocket-api].\n\n## Usage\n\n### Authentication\n\nSee [Pocket API: Authentication][pocket-api-auth].\n\n#### Example\n\n1. Go to your [Pocket applications][pocket-api-apps] and get a consumer key:\n\n   ```haskell\n   let consumerKey = \"1234-abcd1234abcd1234abcd1234\"\n   ```\n\n2. Obtain a request token from Pocket:\n\n   ```haskell\n   let\n     authRequestReq =\n       AuthRequestReq \"\u003cconsumerKey\u003e\" \"\u003credirectUri\u003e\" Nothing\n   authRequest authRequestReq\n   ```\n\n3. Redirect the user to Pocket:\n\n   ```haskell\n   makeRedirect authRequestReq authRequestRsp\n   ```\n\n4. Receive the callback from Pocket.\n\n5. Convert the request token into an access token:\n\n   ```haskell\n   let\n     authAuthorizeReq =\n       AuthAuthorizeReq \"\u003cconsumerKey\u003e\" \"\u003crequestToken\u003e\"\n   authAuthorize authAuthorizeReq\n   ```\n\n### Add\n\nSee [Pocket API: Add][pocket-api-add].\n\n#### Example\n\nUse your application’s consumer key and a user’s access token to add items to\nPocket:\n\n```haskell\nlet\n  addReq =\n    makeAddReq \"\u003cconsumerKey\u003e\" \"\u003caccessToken\u003e\" \"\u003curl\u003e\"\nadd addReq\n```\n\n### Modify\n\nSee [Pocket API: Modify][pocket-api-send].\n\nTODO\n\n### Retrieve\n\nSee [Pocket API: Retrieve][pocket-api-get].\n\n#### Example\n\nUse your application’s consumer key and a user’s access token to retrieve data\nfrom Pocket:\n\n```haskell\nlet\n  getReq =\n    (makeGetReq \"\u003cconsumerKey\u003e\" \"\u003caccessToken\u003e\")\n      { getReqCount = Just 1\n      , getReqSort = Just \"newest\"\n      }\nget getReq\n```\n\n[pocket]: https://getpocket.com\n[pocket-api]: https://getpocket.com/developer/\n[pocket-api-apps]: https://getpocket.com/developer/apps/\n[pocket-api-add]: https://getpocket.com/developer/docs/v3/add\n[pocket-api-auth]: https://getpocket.com/developer/docs/authentication\n[pocket-api-get]: https://getpocket.com/developer/docs/v3/retrieve\n[pocket-api-send]: https://getpocket.com/developer/docs/v3/modify\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpvillaisaza%2Fpocket-haskell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjpvillaisaza%2Fpocket-haskell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpvillaisaza%2Fpocket-haskell/lists"}