{"id":20942385,"url":"https://github.com/unfoldingword-dev/slack-lambda","last_synced_at":"2025-10-23T19:50:57.068Z","repository":{"id":141874345,"uuid":"66027992","full_name":"unfoldingWord-dev/slack-lambda","owner":"unfoldingWord-dev","description":"Function to allow people to join our Slack team","archived":false,"fork":false,"pushed_at":"2017-05-23T16:07:31.000Z","size":550,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":15,"default_branch":"develop","last_synced_at":"2025-10-06T15:03:04.781Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/unfoldingWord-dev.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":"2016-08-18T20:19:53.000Z","updated_at":"2017-03-15T16:22:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"f3414658-f019-4fbb-86ea-ffac4e563424","html_url":"https://github.com/unfoldingWord-dev/slack-lambda","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/unfoldingWord-dev/slack-lambda","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfoldingWord-dev%2Fslack-lambda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfoldingWord-dev%2Fslack-lambda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfoldingWord-dev%2Fslack-lambda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfoldingWord-dev%2Fslack-lambda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unfoldingWord-dev","download_url":"https://codeload.github.com/unfoldingWord-dev/slack-lambda/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfoldingWord-dev%2Fslack-lambda/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278629054,"owners_count":26018483,"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","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"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":[],"created_at":"2024-11-18T23:26:39.949Z","updated_at":"2025-10-06T15:04:00.386Z","avatar_url":"https://github.com/unfoldingWord-dev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/unfoldingWord-dev/slack-lambda.svg)](https://travis-ci.org/unfoldingWord-dev/slack-lambda) [![Coverage Status](https://coveralls.io/repos/github/unfoldingWord-dev/slack-lambda/badge.svg?v=1)](https://coveralls.io/github/unfoldingWord-dev/slack-lambda)\n\n# Slack Lambda Functions for Door43\n\n### Installing Project Requirements\nIn terminal set up virtual environment:\n\n    source ~/\u003cpath_to_venv\u003e/bin/activate\n\nNext install requirements:\n\n    cd ~/Projects/slack-lambda\n    ./install-requirements.sh\n\n### Deploying with Apex\nNeed to first set up AWS credentials (see configuring AWS CLI below).\n\n    cd ~/Projects/slack-lambda\n    apex --env test deploy\n\n\n### Configure API Gateway\n\n* In the AWS console, select `API Gateway`.\n* Click on `Create API`\n* Select `New Api` and set `API name` to slack_invite\n* Click on `Create API`\n* Click on `Actions` and select `Create Resource`\n* Set `Resource Name` to `slack_invite`.\n* Click on `Create Resource`\n* Select `/invite`\n* Click on `Actions` and select `Create Method`\n* Select `GET` and click on checkmark.\n* Click on method `GET`.\n* Under `GET - Setup`\n* Click on `Lambda Function`\n* Set `Lambda Region` to `us-west-2`.\n* Set `Lambda Function` to `slack-invite`.\n* Click on `Save`\n* Click on `Method Request` and enter the `URL Query String Parameters` needed.\n* Click back.\n* Click on `Integration Request`.\n* Expand `Body Mapping Templates`.\n* Select `When no template matches the request Content-Type header`.\n* Click `Add a mapping template`.\n* Enter `application/json` and then select `Method Request passthrough` from the Generate template dropdown.\n* Click `Save`.\n* Click back.\n* Click `Integration Response`.\n* Click the drop-down arrow in the first row.\n* Drop down `Body Mapping Template`.\n* Click `Add mapping template`.\n* Enter `application/json` and then enter `$util.parseJson($input.json('$'))` in the template area.\n* Click `Save`.\n* Click on drop down `Body Mapping Template` to compact.\n* Click `Save`.\n* Click on the `Actions` button and pick `Deploy API`.\n* Pick `prod` for the stage and click `Deploy`.\n* Prod Stage Editor pops up.  Click on `Save Changes`\n\n### Installing Travis CLI\n\n__NOTE: Ruby is required. I used Ruby version 2.2.2 and it worked.__\n\n    gem install travis --no-rdoc --no-ri\n    ln -s ~/.rbenv/versions/2.2.2/bin/travis ~/.local/bin/travis\n\n### Installing AWS CLI\n\n    sudo apt install awscli\n\n### Configuring AWS CLI\n\n    aws configure\n\n### Installing Apex\n\n    sudo curl https://raw.githubusercontent.com/apex/apex/master/install.sh | sudo sh\n\n### Encrypting the Slack API Token\n\nFollow on-screen prompts:\n\n    python encrypt_token.py\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funfoldingword-dev%2Fslack-lambda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funfoldingword-dev%2Fslack-lambda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funfoldingword-dev%2Fslack-lambda/lists"}