{"id":18758617,"url":"https://github.com/canhnt/rest-proxy-service","last_synced_at":"2026-04-28T21:33:01.926Z","repository":{"id":151702925,"uuid":"128472660","full_name":"canhnt/rest-proxy-service","owner":"canhnt","description":"This proxy service can receive long-term running jobs via its REST endpoint and forward to internal services","archived":false,"fork":false,"pushed_at":"2018-04-06T21:47:12.000Z","size":35,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-29T03:28:01.527Z","etag":null,"topics":["integration-services","microservice","producer-consumer","spring-boot","spring-security"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canhnt.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":"2018-04-06T21:34:53.000Z","updated_at":"2018-04-06T21:56:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"babd84f1-b629-40f9-80aa-b09df6cb6d6a","html_url":"https://github.com/canhnt/rest-proxy-service","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canhnt%2Frest-proxy-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canhnt%2Frest-proxy-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canhnt%2Frest-proxy-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canhnt%2Frest-proxy-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canhnt","download_url":"https://codeload.github.com/canhnt/rest-proxy-service/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239650755,"owners_count":19674803,"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":["integration-services","microservice","producer-consumer","spring-boot","spring-security"],"created_at":"2024-11-07T17:47:01.416Z","updated_at":"2025-12-02T05:30:13.974Z","avatar_url":"https://github.com/canhnt.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# REST Proxy Service\n\nThis proxy service can receive long-term running jobs via its REST endpoint and forward to internal services.\nSubmitted jobs progresses can be retrieved via an API endpoint to check whether they complete.\n\nREST APIs are protected by user/password authentication and access tokens\n\n## Build\n\n#### Run in debug mode\n```$xslt\nmvn spring-boot:run\n```\n\n#### Build distribution\n```$xslt\nmvn package\n```\nRun the distribution \n```$xslt\njava -jar target/integration-service-0.0.1-SNAPSHOT.jar\n```\n\n## APIs\n#### GET /accesstoken\nCreate access token by login using basic authentication\n- Request\n```\ncurl -u user:password http://localhost:8080/accesstoken\n```\nThe bootstrapped account name is 'user' with password is 'password'.\n\n- Response:\n```\n{\"accessToken\":\"vmghl0cd17dpdliknujks3s8al\",\"userName\":\"user\"}\n```\nAccess tokens will expire after 10 minutes.\n\n#### POST /submit?access_token=$token\nSubmit a binary file for processing\n\n- Request\n```\ncurl --form file=@./my-cv.doc http://localhost:8080/submit?access_token=vmghl0cd17dpdliknujks3s8al\n```\n\n- Response\n```\n{\"processId\":\"b7f2bb75-e8ac-4fec-831b-0d092f9b2b16\"}\n```\n\n#### GET /retrieve/$processId?access_token=$token\n\nQuery a processing task\n\n- Request\n```\ncurl localhost:8080/retrieve/b7f2bb75-e8ac-4fec-831b-0d092f9b2b16?access_token=vmghl0cd17dpdliknujks3s8al\n```\n\n- Response\n```\n{\"id\":\"b7f2bb75-e8ac-4fec-831b-0d092f9b2b16\",\"state\":\"COMPLETED\",\"fileName\":\"my-cv.doc\",\"result\":\"dummy result\"}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcanhnt%2Frest-proxy-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcanhnt%2Frest-proxy-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcanhnt%2Frest-proxy-service/lists"}