{"id":19210980,"url":"https://github.com/boudra/zuck","last_synced_at":"2025-05-12T19:26:31.982Z","repository":{"id":57559506,"uuid":"89282392","full_name":"boudra/zuck","owner":"boudra","description":"Facebook Graph API wrapper for Elixir","archived":false,"fork":false,"pushed_at":"2023-05-20T20:11:35.000Z","size":12,"stargazers_count":14,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-20T17:38:12.180Z","etag":null,"topics":["elixir","facebook","facebook-ads","facebook-api","facebook-graph-api"],"latest_commit_sha":null,"homepage":"","language":"Elixir","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/boudra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2017-04-24T20:06:39.000Z","updated_at":"2023-05-20T20:11:39.000Z","dependencies_parsed_at":"2024-11-09T13:40:10.512Z","dependency_job_id":"6523ccfe-d900-48b2-9e96-50f0b88de169","html_url":"https://github.com/boudra/zuck","commit_stats":{"total_commits":15,"total_committers":2,"mean_commits":7.5,"dds":0.06666666666666665,"last_synced_commit":"4bdfbb07f575e7f0dc4c2a0163f5f661f5d6734f"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boudra%2Fzuck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boudra%2Fzuck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boudra%2Fzuck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boudra%2Fzuck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boudra","download_url":"https://codeload.github.com/boudra/zuck/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253807248,"owners_count":21967323,"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":["elixir","facebook","facebook-ads","facebook-api","facebook-graph-api"],"created_at":"2024-11-09T13:40:03.824Z","updated_at":"2025-05-12T19:26:31.951Z","avatar_url":"https://github.com/boudra.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Zuck\n\n## Installation\n\nThe package can be installed\nby adding `zuck` to your list of dependencies in `mix.exs`:\n\n```elixir\ndef deps do\n  [{:zuck, git: \"https://github.com/boudra/zuck.git\"}}]\nend\n```\n\n## Configuration\n\n```elixir\nconfig :zuck, \n  app_id: \"\",\n  app_secret: \"\",\n  log: true,\n  debug: true,\n  version: \"v2.9\",\n  endpoint: \"https://graph.facebook.com/\",\n  http: [] # these will be passed to hackney\n```\n\n## Roadmap\n\n* [ ] Batch requests\n* [ ] Real time updates\n* [ ] Facebook messenger\n\n## Usage\n\n\n### Basic example\n\n```elixir\n{:ok, user} = Zuck.get(\"/me\", %{\n  access_token: \"TOKEN\",\n  fields: \"name,email\"\n})\n```\n\n### Pagination trough streams\n\nYou can use the stream helpers to handle multipage data, very useful when getting ad insights or large lists of data, the stream will handle the cursor and make the necesary requests for you:\n\n```elixir\nZuck.get_stream(\"/act_ACCOUNT_ID/insights\", %{\n  access_token: \"TOKEN\",\n  level: \"ad\",\n  date_preset: \"yesterday\",\n  fields: \"ad_name\"\n})\n|\u003e Enum.map(fn ad -\u003e ad.ad_name end)\n```\n\nDocumentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)\nand published on [HexDocs](https://hexdocs.pm). Once published, the docs can\nbe found at [https://hexdocs.pm/zuck](https://hexdocs.pm/zuck).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboudra%2Fzuck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboudra%2Fzuck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboudra%2Fzuck/lists"}