{ "info": { "author": "Grzegorz Pawe\u0142czuk", "author_email": "grzegorz.pawelczuk@nftlearning.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Library: nftl-slack-tools\n\nThis is a tool for Slack API handling.\n\nSource documentation of api is available [here](https://api.slack.com/)\n\n[PyPI project page](https://pypi.org/project/nftl-slack-tools/)\n\n\n# Installation\n\n```sh\npip install nftl-slack-tools\n```\n\n# Usage\n\n```python\n from nftl_slack_tools.client import SlackClient\n\n slack = SlackClient(slack_token='xoxp-...')\n channel = slack.get_channels_api().create('new_order')\n\n if channel:\n print('Yupi!')\n```\n\n# Interface\n\n## Channels\n\nSlack API wrapper that is handling channels category\n\n[API reference](https://api.slack.com/methods#channels)\n\n### Usage \n```python\n from nftl_slack_tools.client import SlackClient\n\n slack = SlackClient(slack_token='xoxp-...')\n channels_api = slack.get_channels_api()\n```\n### Available methods\n#### list()\nLists all channels in a Slack team.\nChannels depends on token so if you want to list users use user token\ninstead of SlackApi admin token\n\nSlack API : [channels.list](https://api.slack.com/methods/channels.list)\n\n```\nArgs:\n limit: optional page length ( default: 1000 )\n cursor: optional message list cursor for pagination\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or channels :py:class:`typing.Dict`\n with two keys: channels (list of channels) and cursor for pagination\n when success\n```\n\n#### create()\nCreate new channel with desired name\n\nSlack API : [channels.create](https://api.slack.com/methods/channels.create)\n```\nArgs:\n channel: channel name, can only contain lowercase letters, numbers,\n hyphens, and underscores, and must be 21 characters or less\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or channel info as :py:class:`typing.Dict`\n when success\n``` \n\n#### onboard()\nInvite users to all the channels available in token scope except general\n\nSlack API : Not available\n```\nArgs:\n users_ids: :py:class:`typing.List` of slack user ids\n cursor: pagination cursor for retry etc.\n invite_token: optional auth token that will overwrite SlackApi token\n used for channel invitation\nReturns:\n boolean success status\n```\n\n#### invite()\nInvite user to the channel\n\nSlack API : [channels.invite](https://api.slack.com/methods/channels.invite)\n```\nArgs:\n channel: Slack channel id like CXJSD234G\n user: Slack user id like UXS65F48\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or channel info as :py:class:`typing.Dict`\n when success\n```\n\n#### info()\nGet channel info by channel id\n\nSlack API : [channels.info](https://api.slack.com/methods/channels.info)\n```\nArgs:\n channel_id: Slack channel id\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if channel_id not found or channel info\n as :py:class:`typing.Dict` when success\n```\n\n#### channel_info()\nFind channel info by channel name\n\nSlack API : Not available\n```\nArgs:\n channel_name: Slack channel name\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if channel_name is not found or channel info\n as :py:class:`typing.Dict` when success\n```\n\n#### history()\nFetches history of messages and events from a channel.\n\nSlack API : [channels.history](https://api.slack.com/methods/channels.history)\n```\nArgs:\n channel: Slack channel id like CXJSF234X\n count: number of messages per page\n latest: End of time range\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if error occurred or number of removed messages\n```\n\n#### clear_history()\nChannel history cleaner\nReads history and removes messages one by one\n\nSlack API : Not available\n```\nArgs:\n channel_name: Slack channel name\n chat: Chat api handler\nReturns:\n Number of removed messages\n```\n\n## Groups\n\nSlack API wrapper that is handling groups category\n\n[API reference](https://api.slack.com/methods#groups)\n\n### Usage \n```python\n from nftl_slack_tools.client import SlackClient\n\n slack = SlackClient(slack_token='xoxp-...')\n channels_api = slack.get_groups_api()\n```\n### Available methods\n#### list()\nLists all groups aka private channel in a Slack team.\nGroups depends on token so if you want to list users use user token\ninstead of SlackApi admin token\n\nSlack API : [groups.list](https://api.slack.com/methods/groups.list)\n\n```\nArgs:\n limit: optional page length ( default: 1000 )\n cursor: optional message list cursor for pagination\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or channels :py:class:`typing.Dict`\n with two keys: groups (list of groups) and cursor for pagination\n when success\n```\n\n#### create()\nCreate new group with desired name\n\nSlack API : [groups.create](https://api.slack.com/methods/groups.create)\n```\nArgs:\n group: group name, can only contain lowercase letters, numbers,\n hyphens, and underscores, and must be 21 characters or less\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or group info as :py:class:`typing.Dict`\n when success\n``` \n\n#### onboard()\nInvite users to all the groups available in token scope except general\n\nSlack API : Not available\n```\nArgs:\n users_ids: :py:class:`typing.List` of slack user ids\n cursor: pagination cursor for retry etc.\n invite_token: optional auth token that will overwrite SlackApi token\n used for group invitation\nReturns:\n boolean success status\n```\n\n#### invite()\nInvite user to the group\n\nSlack API : [groups.invite](https://api.slack.com/methods/groups.invite)\n```\nArgs:\n group: Slack group id like GXJSD234G\n user: Slack user id like UXS65F48\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or group info as :py:class:`typing.Dict`\n when success\n```\n\n#### info()\nGet group info by group id\n\nSlack API : [groups.info](https://api.slack.com/methods/groups.info)\n```\nArgs:\n group_id: Slack group id\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if group_id not found or group info\n as :py:class:`typing.Dict` when success\n```\n\n#### group_info()\nFind group info by group name\n\nSlack API : Not available\n```\nArgs:\n group_name: Slack channel name\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if group_name is not found or channel info\n as :py:class:`typing.Dict` when success\n```\n\n#### history()\nFetches history of messages and events from a group.\n\nSlack API : [groups.history](https://api.slack.com/methods/groups.history)\n```\nArgs:\n group: Slack group id like GXJSD234G\n count: number of messages per page\n latest: End of time range\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if error occurred or number of removed messages\n```\n\n#### clear_history()\nGroup history cleaner\nReads history and removes messages one by one\n\nSlack API : Not available\n```\nArgs:\n group_name: Slack group name\n chat: chat api handler\nReturns:\n Number of removed messages\n```\n\n## Users\n\nSlack API wrapper that is handling users category\n\n[API reference](https://api.slack.com/methods#users)\n\n### Usage \n```python\n from nftl_slack_tools.client import SlackClient\n\n slack = SlackClient(slack_token='xoxp-...')\n users_api = slack.get_users_api()\n```\n### Available methods\n\n#### info()\nGets information about the user\n\nSlack API : [users.info](https://api.slack.com/methods/users.info)\n```\nArgs:\n user: Slack user id like UXS65F48\n locale: should response contain locale info\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or user info as :py:class:`typing.Dict`\n when success\n```\n\n#### validate_name()\nValidate users name field\n\nSlack API : This method is not documented\n```\nArgs:\n name: name to be validated\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or boolean validity result\n```\n\n#### invite()\nInvite user to the workspace\n\nSlack API : This method is not documented\n```\nArgs:\n email: account email,\n firstname: account first name\n lastname: account last name\n channels: comma separated list of channels (id's) to be invited,\n restricted: restrict to guest that can use multiple channels\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or boolean validity result\n```\n\n## Chat\n\nSlack API wrapper that is handling chat category\n\n[API reference](https://api.slack.com/methods#chat)\n\n### Usage \n```python\n from nftl_slack_tools.client import SlackClient\n\n slack = SlackClient(slack_token='xoxp-...')\n chat_api = slack.get_chat_api()\n```\n### Available methods\n\n#### delete()\nDeletes a message\n\nSlack API : [chat.delete](https://api.slack.com/methods/chat.delete)\n```\nArgs:\n channel: Slack channel id like CXJSD234G\n ts: Message id\n token: optional auth token that will overwrite SlackApi token\nReturns:\n boolean operation status\n```\n\n## Signup\n\nSlack API wrapper that is handling signup category\n\nThis category is not documented in Slack doc \n\n### Usage \n```python\n from nftl_slack_tools.client import SlackClient\n\n slack = SlackClient(slack_token='xoxp-...')\n chat_api = slack.get_signup_api()\n```\n### Available methods\n\n#### create_user()\nCreate a user with invitation code\n\nThis method is not documented in Slack doc\n\n```\nArgs:\n code: invitation code\n username: user name that wil be used fo real and display name\n passwd: user password to be set\n locale: locale for user\n tos: TOS key to be accepted\n token: optional auth token that will overwrite SlackApi token\nReturns:\n None if data is invalid or user info as :py:class:`typing.Dict`\n when success\n```\n\n# Deployment how to\n\nAvailable [here](https://packaging.python.org/tutorials/packaging-projects/)\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "nftl-slack-tools", "package_url": "https://pypi.org/project/nftl-slack-tools/", "platform": "", "project_url": "https://pypi.org/project/nftl-slack-tools/", "project_urls": null, "release_url": "https://pypi.org/project/nftl-slack-tools/0.3.0/", "requires_dist": [ "requests (>=2.9.11)", "typing (>=3.5.3.0)", "responses (>=0.9.0)" ], "requires_python": "", "summary": "Tool 4 partial Slack API handling", "version": "0.3.0" }, "last_serial": 4401666, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "976cbf030a14b23a08fc3069d05566b1", "sha256": "4469b6a99c3f1d2cd7a18547f66e3e40290151281b705b94404b4ba1b14ccb7e" }, "downloads": -1, "filename": "nftl_slack_tools-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "976cbf030a14b23a08fc3069d05566b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14945, "upload_time": "2018-07-16T13:14:58", "url": "https://files.pythonhosted.org/packages/dc/fe/707e35059df6091edbe525482475d05f2212e13811e52d040b301b4710ff/nftl_slack_tools-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8399057213a99d03e4485a26120b4a2", "sha256": "0e5112aeffdab7cb7c9494d5c0ba6c9915d49f40883878acc1914c57977ae65c" }, "downloads": -1, "filename": "nftl_slack_tools-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c8399057213a99d03e4485a26120b4a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5660, "upload_time": "2018-07-16T13:14:59", "url": "https://files.pythonhosted.org/packages/0a/e8/f72ffbf97075644254c5f62eb26099c6deced162be33ea47b5897cb164ec/nftl_slack_tools-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "aa8ee034c2dd7572a35bbd0693d4082e", "sha256": "5168b4452ea51fee86ff1af21ec3990801875321a15ce1b653b508fb7a43689d" }, "downloads": -1, "filename": "nftl_slack_tools-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "aa8ee034c2dd7572a35bbd0693d4082e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14966, "upload_time": "2018-07-16T13:29:12", "url": "https://files.pythonhosted.org/packages/62/c1/1acd094755c3e0104e2ec39efb9c1a92cf490050d29f7dd0793119f1fa87/nftl_slack_tools-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "36bb974e003d74d122dba6ffba27ca4c", "sha256": "8ebd6f05dbdfbeeeee25763f38afebae7600b8a999dee99000219b065919239a" }, "downloads": -1, "filename": "nftl_slack_tools-0.1.1.tar.gz", "has_sig": false, "md5_digest": "36bb974e003d74d122dba6ffba27ca4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5694, "upload_time": "2018-07-16T13:29:14", "url": "https://files.pythonhosted.org/packages/33/1e/081125f043c91c4f98ef51e4bece8d78ba83c521b7afea2d2be956cc731d/nftl_slack_tools-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "3b4ff35f5cdf93d98ec6568e06715700", "sha256": "d2b679db350d4d4b66d27d552779356627be75d046b478e78bec20d6626f44a4" }, "downloads": -1, "filename": "nftl_slack_tools-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "3b4ff35f5cdf93d98ec6568e06715700", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9077, "upload_time": "2018-07-16T13:55:40", "url": "https://files.pythonhosted.org/packages/2d/68/319cb08750bad726e75d67434ab0cd5fc32dfba8be0c468cfdc0cf3ea6da/nftl_slack_tools-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3a05c6d5abcc77cfdf41a4143a2f84a6", "sha256": "5a2c03d80a5c99b65767ff81db5108cf85819da6f357d3d11e6ad4fd27a37486" }, "downloads": -1, "filename": "nftl_slack_tools-0.1.2.tar.gz", "has_sig": false, "md5_digest": "3a05c6d5abcc77cfdf41a4143a2f84a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5705, "upload_time": "2018-07-16T13:55:41", "url": "https://files.pythonhosted.org/packages/1b/4e/c04370d4e1f7dc2c53edacbf36bd89e9d21fca8f8c2b936c2fe07bc8c2ce/nftl_slack_tools-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a77cf6de272e0fd862dff35171d63be7", "sha256": "b97805e97749d100b0a24461248276b7cd4f3fa2f679922487d773a3675a2865" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a77cf6de272e0fd862dff35171d63be7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11400, "upload_time": "2018-07-25T15:18:43", "url": "https://files.pythonhosted.org/packages/b6/3d/e052c9fe1b00037a5e1bb243bf465b5c0fc0378d4178657fdc91bccf1bee/nftl_slack_tools-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aa520de7d63787adaadde795dac6130a", "sha256": "41b7ea58ed0f0603f450026b4877c4d46a9dd9fcd3bd9f0fb6f84aba2d69fdb9" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.0.tar.gz", "has_sig": false, "md5_digest": "aa520de7d63787adaadde795dac6130a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7770, "upload_time": "2018-07-25T15:18:44", "url": "https://files.pythonhosted.org/packages/31/bc/fbe352c8b288c5347aa92bd9a0d9acd8ebc18efaf15e649c649146c1af08/nftl_slack_tools-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "0ede397a051dc76e6fe0b36b14e5c687", "sha256": "121dce27efa5b1110749d8199c3ae789479e449fba6786b61be803397b9de48a" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0ede397a051dc76e6fe0b36b14e5c687", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16569, "upload_time": "2018-07-26T11:53:49", "url": "https://files.pythonhosted.org/packages/95/00/4773bf9eda8df8b35603232b86ca6ba82deaa0953776aad342bb7152a0ee/nftl_slack_tools-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dcb0d330f4c4764420d011531772a514", "sha256": "d1bbe8b05191deb14f14cb2466f623b6cd12a50a036f8f31c6c00934caad80d2" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.1.tar.gz", "has_sig": false, "md5_digest": "dcb0d330f4c4764420d011531772a514", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9734, "upload_time": "2018-07-26T11:53:50", "url": "https://files.pythonhosted.org/packages/50/3d/dc80c140577d565c4e4b7fd4551ceaf73c7283f15ffad7760a3d2bea69dd/nftl_slack_tools-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "f44b2bd52946e2cd430794f3012a7657", "sha256": "5837c3efb32ebf6f846dfe112cd9c8232f34a7ada335a39a507132a22ea55b44" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f44b2bd52946e2cd430794f3012a7657", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16566, "upload_time": "2018-07-26T14:06:14", "url": "https://files.pythonhosted.org/packages/25/39/4b2358868f071c11883e40d699558af75485a324a4df34c0cd91e2e145bd/nftl_slack_tools-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67f85162744e2d2922b42ddd3fbf131c", "sha256": "0dfce83384baf7ee5d3d94c9268d6d3e86ad38f1603424378b79d95118a59611" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.2.tar.gz", "has_sig": false, "md5_digest": "67f85162744e2d2922b42ddd3fbf131c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9721, "upload_time": "2018-07-26T14:06:16", "url": "https://files.pythonhosted.org/packages/72/e8/2d954ce69051798b3fc595d78a43a7996c43b06b2be36a1aad90807e27fc/nftl_slack_tools-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "2726e3d4fd49b9da5ab2349e838db76c", "sha256": "8e4a5f3de255ba0a134643063bf98e62ee6a7e34a0ed47a2d1bf7cd4f87f993e" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2726e3d4fd49b9da5ab2349e838db76c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17451, "upload_time": "2018-08-01T12:32:34", "url": "https://files.pythonhosted.org/packages/4f/69/f1a810a59ad93d9e14623f31b4ab94bf1f53f667b885684d815605a6de92/nftl_slack_tools-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1ad74b5910e4a7f33e4212cc9e70b8e4", "sha256": "3276736105abe6465776fbd5efb1371322b95b3e920e24e1de4237c2cf2d0322" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.3.tar.gz", "has_sig": false, "md5_digest": "1ad74b5910e4a7f33e4212cc9e70b8e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10501, "upload_time": "2018-08-01T12:32:35", "url": "https://files.pythonhosted.org/packages/52/21/0c3bdea333e64b74e82c611cbc576fad86c4db2596fa45e6b8227b5cee07/nftl_slack_tools-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "bdc5089d9d384f705c22e4f732ab879a", "sha256": "d6de992cbd9d03bdfe821c979081eb19a194d5480dad986012b3784cf91140b4" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "bdc5089d9d384f705c22e4f732ab879a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19457, "upload_time": "2018-08-02T08:26:52", "url": "https://files.pythonhosted.org/packages/24/75/0d0658bcc79b58cd78e552dd4390172d40df32654d34180571a639e9a2c9/nftl_slack_tools-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d586df40efaaa92bb0bdcd92c56d9c3", "sha256": "478269f26c2ac56085d5824e30db0d3bdb86b1b84ce9b07059ecaf685f2992a8" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.4.tar.gz", "has_sig": false, "md5_digest": "3d586df40efaaa92bb0bdcd92c56d9c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11323, "upload_time": "2018-08-02T08:26:53", "url": "https://files.pythonhosted.org/packages/c2/8c/76d6d8aa2280ed49aca9cb83f22e2ef3d7c6a59c15d8d8c1ce33dd9f372b/nftl_slack_tools-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "60b44ea54b7325a2027cd8ffdda0dcbd", "sha256": "42d5f7ebbd7280e4744b6f2bad82c8df2e93e23cddf52b3aecd0e3c0cdf3bbfd" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.5-py3-none-any.whl", "has_sig": false, "md5_digest": "60b44ea54b7325a2027cd8ffdda0dcbd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19465, "upload_time": "2018-08-02T13:29:08", "url": "https://files.pythonhosted.org/packages/10/ae/b7632e9598fd9f777709fabf3fff203692c828d2f961183c15946e1f8703/nftl_slack_tools-0.2.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44fbb1f0232f912a0a665cb04bd9377c", "sha256": "04d6e9345d03b3f70eef9ce5201d8a73f8f2f13f9fd017f07c03d2334e0d8c6a" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.5.tar.gz", "has_sig": false, "md5_digest": "44fbb1f0232f912a0a665cb04bd9377c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11314, "upload_time": "2018-08-02T13:29:09", "url": "https://files.pythonhosted.org/packages/c6/f2/aa6fb407303ec00d4b1fc62efec2e9d7773e92f06a8bc830016cd83afce5/nftl_slack_tools-0.2.5.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "99eded022f482a80f971670c1d8715dc", "sha256": "35f9dfebe806edc6884199ff1924df5a680f0fd667dca4babb2d435ff5674a14" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.7-py3-none-any.whl", "has_sig": false, "md5_digest": "99eded022f482a80f971670c1d8715dc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19467, "upload_time": "2018-09-20T10:58:36", "url": "https://files.pythonhosted.org/packages/20/57/57e3eecd611cf9eee0ca31cbf3416015550e575639fde7ee15bbd7599190/nftl_slack_tools-0.2.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd664664d5b97bab0ef8f0df1104d477", "sha256": "1bc68dd5816952eb2efe5127f6cc33e8eb75c551458ad29a8288702f7858f29c" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.7.tar.gz", "has_sig": false, "md5_digest": "dd664664d5b97bab0ef8f0df1104d477", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11334, "upload_time": "2018-09-20T10:58:37", "url": "https://files.pythonhosted.org/packages/a5/bd/cd9739126f4bc6b2843dc16d27e545da03b5c0e9660192af98f2697d730f/nftl_slack_tools-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "959704980bbc04f289c55db090f47bd5", "sha256": "f25059e728c24b1a8d5dd4d877629a32446a7c017f894a5a7a44ce5d67163afe" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.8-py3-none-any.whl", "has_sig": false, "md5_digest": "959704980bbc04f289c55db090f47bd5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19479, "upload_time": "2018-09-20T11:19:41", "url": "https://files.pythonhosted.org/packages/05/62/e7df355b56396acdfc661752f6dd6332359c4678713a3edb590480db3309/nftl_slack_tools-0.2.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a8ecdae94b28e43fdefae7f2affd10c8", "sha256": "c29556995759187ddbf2b6751a36b7b103daa20320fd3a08b627abdc70c748ef" }, "downloads": -1, "filename": "nftl_slack_tools-0.2.8.tar.gz", "has_sig": false, "md5_digest": "a8ecdae94b28e43fdefae7f2affd10c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11354, "upload_time": "2018-09-20T11:19:43", "url": "https://files.pythonhosted.org/packages/39/38/3f8772f778a960ff6d871930170f3b83f6ed604456d9a7f89cfff6314a59/nftl_slack_tools-0.2.8.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "5effb30e0c9997e33fe3574871f0b0e2", "sha256": "3c70c8c221e4adb05131887d6e545370ba04d0d8e8c0303df6d345d348d82016" }, "downloads": -1, "filename": "nftl_slack_tools-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5effb30e0c9997e33fe3574871f0b0e2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19762, "upload_time": "2018-10-22T09:09:04", "url": "https://files.pythonhosted.org/packages/5b/18/8e42e24f1261ee4499f6d6b3ea9f6faf7603d3cfe96f4ef9e850220f593e/nftl_slack_tools-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "20ebfc6e62b9099af162f219c0842a5c", "sha256": "6879846c979c0680f543edcc47ee42882f5a725eed28174a8502cc288c6a8668" }, "downloads": -1, "filename": "nftl_slack_tools-0.3.0.tar.gz", "has_sig": false, "md5_digest": "20ebfc6e62b9099af162f219c0842a5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13388, "upload_time": "2018-10-22T09:09:06", "url": "https://files.pythonhosted.org/packages/56/15/1c01412e798e95b9491af6255de149a19f3868e6c90a7024e9d4069820da/nftl_slack_tools-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5effb30e0c9997e33fe3574871f0b0e2", "sha256": "3c70c8c221e4adb05131887d6e545370ba04d0d8e8c0303df6d345d348d82016" }, "downloads": -1, "filename": "nftl_slack_tools-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5effb30e0c9997e33fe3574871f0b0e2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19762, "upload_time": "2018-10-22T09:09:04", "url": "https://files.pythonhosted.org/packages/5b/18/8e42e24f1261ee4499f6d6b3ea9f6faf7603d3cfe96f4ef9e850220f593e/nftl_slack_tools-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "20ebfc6e62b9099af162f219c0842a5c", "sha256": "6879846c979c0680f543edcc47ee42882f5a725eed28174a8502cc288c6a8668" }, "downloads": -1, "filename": "nftl_slack_tools-0.3.0.tar.gz", "has_sig": false, "md5_digest": "20ebfc6e62b9099af162f219c0842a5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13388, "upload_time": "2018-10-22T09:09:06", "url": "https://files.pythonhosted.org/packages/56/15/1c01412e798e95b9491af6255de149a19f3868e6c90a7024e9d4069820da/nftl_slack_tools-0.3.0.tar.gz" } ] }