{"id":18605158,"url":"https://github.com/anton-johansson/callback-proxy-service","last_synced_at":"2026-05-01T06:34:09.692Z","repository":{"id":42356452,"uuid":"172357934","full_name":"anton-johansson/callback-proxy-service","owner":"anton-johansson","description":"Provides an HTTP service that is useful for developers working with third party services performing some kind of webhooks. ","archived":false,"fork":false,"pushed_at":"2022-12-09T15:11:35.000Z","size":671,"stargazers_count":0,"open_issues_count":22,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-16T19:47:36.920Z","etag":null,"topics":["callback","docker-image","http","ldap-authentication","proxy"],"latest_commit_sha":null,"homepage":"","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/anton-johansson.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}},"created_at":"2019-02-24T15:58:26.000Z","updated_at":"2019-07-11T15:17:54.000Z","dependencies_parsed_at":"2023-01-26T09:31:44.521Z","dependency_job_id":null,"html_url":"https://github.com/anton-johansson/callback-proxy-service","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/anton-johansson/callback-proxy-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anton-johansson%2Fcallback-proxy-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anton-johansson%2Fcallback-proxy-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anton-johansson%2Fcallback-proxy-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anton-johansson%2Fcallback-proxy-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anton-johansson","download_url":"https://codeload.github.com/anton-johansson/callback-proxy-service/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anton-johansson%2Fcallback-proxy-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32487593,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["callback","docker-image","http","ldap-authentication","proxy"],"created_at":"2024-11-07T02:20:03.731Z","updated_at":"2026-05-01T06:34:09.667Z","avatar_url":"https://github.com/anton-johansson.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Callback proxy service\n\nProvides an HTTP service that is useful for developers working with third party services performing some kind of webhooks. You set up a local proxy, and make it publically available over the internet and you use that public address when communicating with the third party. Those public webhook calls will smoothly land on your local development environment.\n\n[![Build status](https://travis-ci.org/anton-johansson/callback-proxy-service.svg?branch=master)](https://travis-ci.org/anton-johansson/callback-proxy-service)\n[![Release](https://img.shields.io/github/release/anton-johansson/callback-proxy-service.svg)](https://github.com/anton-johansson/callback-proxy-service/releases)\n[![Docker image pulls](https://img.shields.io/docker/pulls/antonjohansson/callback-proxy-service.svg)](https://hub.docker.com/r/antonjohansson/callback-proxy-service)\n[![Docker image layers](https://img.shields.io/microbadger/layers/antonjohansson/callback-proxy-service.svg)](https://hub.docker.com/r/antonjohansson/callback-proxy-service)\n[![Docker image size](https://img.shields.io/microbadger/image-size/antonjohansson/callback-proxy-service.svg)](https://hub.docker.com/r/antonjohansson/callback-proxy-service)\n\n\n## Running\n\nBuild and install necessary dependencies:\n\n```shell\n$ npm run build\n```\n\nStart the application in development mode:\n\n```\n$ npm run dev\n```\n\nThis starts three processes that is watching for changes:\n\n* `server`: Starts a HTTP server, serving the server application on port 8181, re-starting automatically if server-files are changed.\n* `client / start`: Starts the client application on port 3000, re-loading the page automatically if client-files are changed.\n* `client / watch-css`: Watches for changes to `*.scss` files and compiles them to `*.css`.\n\nIn production mode, the server and client would be served on the same port, but in development mode we use different ones in order to get auto-reloads working properly.\n\n\n## Configuration\n\nThe service is configured using a YAML file, located at `/etc/callback-proxy-service/callback-proxy-service.yaml` (but can be overridden with the environment variable `CONFIG_FILE_PATH`). Here's an example configuration file:\n\n```yaml\nhttp:\n  configPort: 8181\n  proxyPort: 8182\n  proxyEndpoint: https://callback-proxy.example.com\n  session:\n    secret: ...\nui:\n  suggestionPath: :8080\ndatabase:\n  fileName: /var/callback-proxy-service/callback-proxy-service.json\n  callbackHistorySize: 10\n  targetHistorySize: 10\nauth:\n  static:\n    enabled: true\n    users:\n      - username: anton\n        password: secret\n        name: Anton Johansson\n        email: anton@anton-johasson.com\n  ldap:\n    enabled: false\n    domain: ...\n    url: ...\n    searchBase: ...\n    attributes:\n      username: sAMAccountName\n      name: cn\n      email: mail\nlog:\n  level: warn\n```\n\n\n## Deploying\n\nThe service exposes two ports. One port (`8182`) for the actual proxy calls. This one needs to be exposed publically. The other port (`8181`) provides a UI for configuring proxy endpoints and should only be exposed on the local network.\n\n\n### Kubernetes\n\nThere's an example Kubernetes deployment file [here](./deploy).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanton-johansson%2Fcallback-proxy-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanton-johansson%2Fcallback-proxy-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanton-johansson%2Fcallback-proxy-service/lists"}