{ "info": { "author": "Africa's Talking", "author_email": "info@africastalking.com", "bugtrack_url": null, "classifiers": [], "description": "# africastalking-python\n\n![](https://img.shields.io/pypi/v/africastalking.svg)\n\n> The SDK provides convenient access to the Africa's Talking APIs to python apps.\n\n\n## Documentation\nTake a look at the [API docs here](https://build.at-labs.io/discover/).\n\n## Install\n\n```bash\n$ pip install africastalking # python 2.7.x\n\nOR\n\n$ python -m pip install africastalking # python 2.7.x\n\nOR\n\n$ pip3 install africastalking # python 3.6.x\n\nOR\n\n$ python3 -m pip install africastalking # python 3.6.x\n\n```\n\n## Usage\n\nThe package needs to be configured with your app username and API key, which you can get from the [dashboard](https://account.africastalking.com/).\n\n> You can use this SDK for either production or sandbox apps. For sandbox, the app username is **ALWAYS** `sandbox`\n\n```python\n# import package\nimport africastalking\n\n\n# Initialize SDK\nusername = \"YOUR_USERNAME\" # use 'sandbox' for development in the test environment\napi_key = \"YOUR_API_KEY\" # use your sandbox app API key for development in the test environment\nafricastalking.initialize(username, api_key)\n\n\n# Initialize a service e.g. SMS\nsms = africastalking.SMS\n\n\n# Use the service synchronously\nresponse = sms.send(\"Hello Message!\", [\"+2547xxxxxx\"])\nprint(response)\n\n# Or use it asynchronously\ndef on_finish(error, response):\n if error is not None:\n raise error\n print(response)\n\nsms.send(\"Hello Message!\", [\"+2547xxxxxx\"], callback=on_finish) \n\n```\n\nSee [example](example/) for more usage examples.\n\n\n## Initialization\n\nInitialize the SDK by calling `africastalking.initialize(username, api_key)`. After initialization, you can get instances of offered services as follows:\n\n- [SMS](#sms): `africastalking.SMS`\n- [Airtime](#airtime): `africastalking.Airtime`\n- [Payments](#payments): `africastalking.Payment`\n- [Voice](#voice): `africastalking.Voice`\n- [Token](#token): `africastalking.Token`\n- [Application](#application): `africastalking.Application`\n\n### `Application`\n\n- `fetch_application_data()`: Get app information. e.g balance.\n\n### `Airtime`\n\n- `send(recipients: [dict])`: Send airtime\n\n - `recipients`: Contains an array of arrays containing the following keys\n\n - `phone_number`: Recipient of airtime\n - `amount`: Amount to send with currency e.g `100`\n - `currency_code`: 3-digit ISO format currency code (e.g `KES`, `USD`, `UGX` etc).\n\n### `Sms`\n\n- `send(message: str, recipients: [str], sender_id: str = None, enqueue: bool = False)`: Send a message.\n\n - `message`: SMS content. `REQUIRED`\n - `recipients`: An array of phone numbers. `REQUIRED`\n - `sender_id`: Shortcode or alphanumeric ID that is registered with your Africa's Talking account.\n - `enqueue`: Set to `true` if you would like to deliver as many messages to the API without waiting for an acknowledgement from telcos.\n\n- `send_premium(message: str, short_code: str, recipients: [str], link_id: [str] = None, retry_duration_in_hours [int] = None)`: Send a premium SMS\n\n - `message`: SMS content. `REQUIRED`\n - `short_code`: Your premium product shortCode. `REQUIRED`\n - `recipients`: An array of phone numbers. `REQUIRED`\n - `keyword`: Your premium product keyword.\n - `link_id`: We forward the `linkId` to your application when a user sends a message to your onDemand service\n - `retry_duration_in_hours`: This specifies the number of hours your subscription message should be retried in case it's not delivered to the subscriber\n\n- `fetch_messages(last_received_id: int = 0)`: Fetch your messages\n\n - `last_received_id`: This is the id of the message you last processed. Defaults to `0`\n\n- `create_subscription(short_code: str, keyword: str, phone_number: str, checkout_token: str)`: Create a premium subscription\n\n - `short_code`: Premium short code mapped to your account. `REQUIRED`\n - `keyword`: Premium keyword under the above short code and is also mapped to your account. `REQUIRED`\n - `phone_number`: PhoneNumber to be subscribed `REQUIRED`\n - `checkout_token`: Token used to validate the subscription request `REQUIRED`. See [token service](#token)\n\n- `fetch_subscriptions(short_code: str, keyword: str, last_received_id: int = 0)`: Fetch your premium subscription data\n\n - `short_code`: Premium short code mapped to your account. `REQUIRED`\n - `keyword`: Premium keyword under the above short code and mapped to your account. `REQUIRED`\n - `last_received_id`: ID of the subscription you believe to be your last. Defaults to `0`\n\n- `delete_subscription(short_code: str, keyword: str, phone_number: str)`: Delete a phone number from a premium subscription\n\n - `short_code`: Premium short code mapped to your account. `REQUIRED`\n - `keyword`: Premium keyword under the above short code and is also mapped to your account. `REQUIRED`\n - `phone_number`: PhoneNumber to be subscribed `REQUIRED`\n\n\n### `Payments`\n\n- `mobile_checkout(product_name: str, phone_number: str, currency_code: str, amount: float, metadata: dict = {}, provider_channel:str)`: Charge a customers mobile money account\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `phone_number`: Customer phone number (in international format). `REQUIRED`\n - `currency_code`: 3-digit ISO format currency code (e.g `KES`, `USD`, `UGX` etc). `REQUIRED`\n - `amount`: Amount to charge. `REQUIRED`\n - `metadata`: Additional data to associate with the transaction. `REQUIRED`\n - `provider_channel`: The provider channel the payment will be initiated from e.g a paybill number. `OPTIONAL`\n\n- `mobile_b2c(product_name: str, consumers: [dict])`: Send mobile money to customers:\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `consumers`: A list of **up to 10** recipients. Each recipient has:\n\n - `phoneNumber`: Customer phone number (in international format). `REQUIRED`\n - `currencyCode`: 3-digit ISO format currency code (e.g `KES`, `USD`, `UGX` etc). `REQUIRED`\n - `amount`: Amount to pay. `REQUIRED`\n - `reason`: The purpose of the payment. See `payments::REASON*` for supported reasons. `REQUIRED`\n - `metadata`: Additional data to associate with the tranasction. `REQUIRED`\n\n- `mobile_b2b(product_name: str, business: dict)`: Send mobile money to business.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `business`: Business details\n - `provider`: Payment provider that is facilitating this transaction. See `payments::PROVIDER*` for supported providers. `REQUIRED`\n - `transferType`: Describes the type of payment being made. See `payments::TRANSFER_TYPE*` for supported transfer types. `REQUIRED`\n - `currencyCode`: 3-digit ISO format currency code (e.g `KES`, `USD`, `UGX` etc). `REQUIRED`\n - `destinationChannel`: Name or number of the channel that will receive payment by the provider. `REQUIRED`\n - `destinationAccount`: Name used by the business to receive money on the provided destinationChannel. `REQUIRED`\n - `amount`: Amount to pay. `REQUIRED`\n - `metadata`: Additional data to associate with the transaction. `REQUIRED`\n\n- `mobile_data(product_name: str, recipients: dict)`: Send mobile data to customers.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `recipients`: A list of recipients. Each recipient has:\n - `phoneNumber`: Customer phone number (in international format). `REQUIRED`\n - `quantity`: Mobile data amount. `REQUIRED`\n - `unit`: Mobile data unit. Can either be `MB` or `GB`. `REQUIRED`\n - `validity`: How long the mobile data is valid for. Must be one of `Day`, `Week` and `Month`. `REQUIRED`\n - `metadata`: Additional data to associate with the transaction. `REQUIRED`\n\n- `bank_checkout(product_name: str, currency_code: str, amount: float, bank_account: dict, narration: str, metadata: dict = {})`: Initiate bank checkout.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `bank_account`: Bank account to be charged:\n\n - `accountName`: Name of the bank account. `REQUIRED`\n - `accountNumber`: Account number. `REQUIRED`\n - `bankCode`: A [6-Digit Integer Code](https://build.at-labs.io/docs/payments%2Fbank%2Fcheckout) for the bank that we allocate. See `payments::BANK*` for supported banks. `REQUIRED`\n - `dateOfBirth`: Date of birth of the account owner (in the format `YYYY-MM-DD`). Required for Zenith Bank Nigeria.\n\n - `currency_ode`: 3-digit ISO format currency code (only `NGN` is supported at present). `REQUIRED`\n - `amount`: Amount to charge. `REQUIRED`\n - `narration`: A short description of the transaction. `REQUIRED`\n - `metadata`: Additional data to associate with the transaction. `REQUIRED`\n\n- `validate_bank_checkout(transaction_id: str, otp: str)`: Validate a bank checkout\n\n - `transactionId`: Transaction id returned from a bank charge request. `REQUIRED`\n - `otp`: One Time Password provided by the customer you're charging. `REQUIRED`\n\n- `bank_transfer(product_name: str, recipients: [dict])`: Move money form payment wallet to bank account.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `recipients`: A list of recipients. Each recipient has:\n\n - `bankAccount`: Bank account to receive money:\n\n - `accountName`: Name of the bank account. `REQUIRED`\n - `accountNumber`: Account number. `REQUIRED`\n - `bankCode`: A [6-Digit Integer Code](https://build.at-labs.io/docs/payments%2Fbank%2Fcheckout) for the bank that we allocate. See `payments::BANK*` for supported banks. `REQUIRED`\n - `dateOfBirth`: Date of birth of the account owner (in the format `YYYY-MM-DD`). Required for Zenith Bank Nigeria.\n\n - `currencyCode`: 3-digit ISO format currency code (only `NGN` is supported at present). `REQUIRED`\n - `amount`: Amount to pay. `REQUIRED`\n - `narration`: A short description of the transaction. `REQUIRED`\n - `metadata`: Additonal data to associate with the transaction. `REQUIRED`\n\n- `card_checkout(product_name: str, currency_code:str, amount: float, payment_card: dict, narration: str, metadata: dict = {})`: Initiate card checkout.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `payment_card`: Payment card to be charged:\n\n - `number`: Payment card number. `REQUIRED`\n - `cvvNumber`: 3 or 4 digit card verification Value. `REQUIRED`\n - `expiryMonth`: Expiration month on the card (e.g `8`). `REQUIRED`\n - `authToken`: Payment card's ATM PIN. `REQUIRED`\n - `countryCode`: 2-Digit countryCode where the card was issued (only `NG` is supported at present). `REQUIRED`\n\n - `checkout_token`: A token that has been generated by our APIs as as result of charging a customers payment card in a previous transaction. When using a `checkoutToken`, the `paymentCard` data should NOT be populated.\n - `currency_code`: 3-digit ISO format currency code (only `NGN` is supported at present). `REQUIRED`\n - `amount`: Amount to charge. `REQUIRED`\n - `narration`: A short description of the transaction. `REQUIRED`\n - `metadata`: Additonal data to associate with the transaction. `REQUIRED`\n\n- `validate_card_checkout(transaction_id: str, otp: str)`: Validate a card checkout\n\n - `transactionId`: Transaction id returned from a card charge request. `REQUIRED`\n - `otp`: One Time Password provided by the customer you're charging. `REQUIRED`\n\n- `wallet_transfer(product_name: str, target_product_code: int, currency_code: str, amount: float, metadata: dict)`: Transfer money from one Payment Product to another Payment Product hosted on Africa's Talking.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `target_product_code`: Unique code ode of payment product receiving funds on Africa's Talking. `REQUIRED`\n - `currency_code`: 3-digit ISO format currency code (only `NGN` is supported at present). `REQUIRED`\n - `amount`: Amount to transfer. `REQUIRED`\n - `metadata`: Additional data to associate with the transation. `REQUIRED`\n\n\n- `topup_stash(product_name: str, currency_code: str, amount: float, metadata: dict)`: Move money from a Payment Product to an app's stash.\n\n - `product_name`: Payment product on Africa's Talking. `REQUIRED`\n - `currency_code`: 3-digit ISO format currency code (only `NGN` is supported at present). `REQUIRED`\n - `amount`: Amount to transfer. `REQUIRED`\n - `metadata`: Additonal data to associate with the transaction. `REQUIRED`\n\n- `fetch_product_transactions(product_name: str, filters: dict)`: Fetch transactions of a particular payment product.\n\n - `productName`: Payment product on Africa's Talking. `REQUIRED`\n - `filters`: Transaction filters.\n - `pageNumber`: Page number to fetch results from. Starts from `1`. `REQUIRED`\n - `count`: Number of results to fetch. `REQUIRED`\n - `startDate`: Start Date to consider when fetching.\n - `endDate`: End Date to consider when fetching.\n - `category`: Category to consider when fetching.\n - `provider`: Provider to consider when fetching.\n - `status`: Status to consider when fetching.\n - `source`: Source to consider when fetching.\n - `destination`: Destination to consider when fetching.\n - `providerChannel`: Provider channel to consider when fetching.\n\n- `wallet_transactions(filters: dict)`: Fetch your wallet transactions.\n\n - `filters`: Wallet transactions filters. `REQUIRED`\n - `pageNumber`: Page number to fetch results from. Starts from `1`. `REQUIRED`\n - `count`: Number of results to fetch. `REQUIRED`\n - `startDate`: Start Date to consider when fetching.\n - `endDate`: End Date to consider when fetching.\n - `category`: Comma delimited list of categories to consider when fetching.\n\n- `find_transaction(transaction_id: str)`: Find a particular payment transaction.\n\n - `transaction_id`: ID of trancation to find. `REQUIRED`\n\n- `wallet_balance()`: Fetch your wallet balance. \n\n\n### `Voice`\n\n- `call(callFrom: str, callTo: [str])`: Initiate a phone call\n\n\t- `callFrom`: Phone number on Africa's Talking (in international format). `REQUIRED`\n - `callTo`: An array of phone numbers that you wish to dial (in international format). `REQUIRED` \n\n- `fetch_queued_calls(phone_number: str)`: Get queued calls\n\n - `phone_number`: Phone number mapped to your Africa's Talking account (in international format). `REQUIRED`\n\n- `upload_media_file(phone_number: str, url: str)`: Upload voice media file\n\n - `phone_number`: phone number mapped to your Africa's Talking account (in international format). `REQUIRED`\n - `url`: The url of the file to upload. Should start with `http(s)://`. `REQUIRED`\n\n### `Token`\n\n- `create_checkout_token(phone_number: str)`: Create a new checkout token for `phone_number`.\n\n - `phone_number`: Phone number to create checkout token for\n\n- `generate_auth_token()`: Generate an auth token to use for authentication instead of an API key.\n\n\n### `Ussd`\n\nFor more information, please read [http://docs.africastalking.com/ussd](https://build.at-labs.io/docs/ussd%2Foverview)\n\n\n## Development\n```shell\n$ git clone https://github.com/AfricasTalkingLtd/africastalking-python.git\n$ cd africastalking-python\n$ touch .env\n```\n\nMake sure your `.env` file has the following content then run `python -m unittest discover -v`\n\n```ini\n# AT API\nUSERNAME=sandbox\nAPI_KEY=some_key\n```\n\n## Issues\n\nIf you find a bug, please file an issue on [our issue tracker on GitHub](https://github.com/AfricasTalkingLtd/africastalking-python/issues).\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://codeload.github.com/AfricasTalkingLtd/africastalking-python/tar.gz/1.1.9", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/AfricasTalkingLtd/africastalking-python", "keywords": "ussd voice sms mpesa card bank b2b b2c sender_id payments airtime africastalking", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "africastalking", "package_url": "https://pypi.org/project/africastalking/", "platform": "", "project_url": "https://pypi.org/project/africastalking/", "project_urls": { "Download": "https://codeload.github.com/AfricasTalkingLtd/africastalking-python/tar.gz/1.1.9", "Homepage": "https://github.com/AfricasTalkingLtd/africastalking-python" }, "release_url": "https://pypi.org/project/africastalking/1.1.9/", "requires_dist": [ "requests (>=v2.18.4)", "schema (>=0.6.7)" ], "requires_python": ">=2.7.10", "summary": "Official Africa's Talking Python SDK", "version": "1.1.9" }, "last_serial": 5944119, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "8e29a4e6fa8abbbe84cb5ca50af2bd7b", "sha256": "16a6be3162a23c82db9748b120f7fa2fead42d5376799e26bb69bdd0c24a472a" }, "downloads": -1, "filename": "africastalking-1.0.1.tar.gz", "has_sig": false, "md5_digest": "8e29a4e6fa8abbbe84cb5ca50af2bd7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7130, "upload_time": "2018-02-28T13:34:56", "url": "https://files.pythonhosted.org/packages/3d/3c/f8e928f7a513c56877151435b7ae667edaad1f57614406350cc3cf49f73e/africastalking-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "31d03e44d68330d7b8c5c032d7b2fdd7", "sha256": "35bb494061d04694fe8b0e7c4be8ec4190f01d0351218b2d736096af317e0c29" }, "downloads": -1, "filename": "africastalking-1.0.2.tar.gz", "has_sig": false, "md5_digest": "31d03e44d68330d7b8c5c032d7b2fdd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8688, "upload_time": "2018-02-28T13:53:02", "url": "https://files.pythonhosted.org/packages/42/f8/137838fa1f0957aee5dd6e31506c749be5c6a5723b79f3383998488a268b/africastalking-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "3837219b000143034fb13dcab06d26d2", "sha256": "bde1833e7395271bada6beaf3948b81e54c8751ac3740e7dd8e917c48295eb3c" }, "downloads": -1, "filename": "africastalking-1.0.3.tar.gz", "has_sig": false, "md5_digest": "3837219b000143034fb13dcab06d26d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8843, "upload_time": "2018-02-28T14:04:30", "url": "https://files.pythonhosted.org/packages/d2/53/9e0c3f883d370e8389959aaad85b922d1e30fdccaa685390620ab0f516b7/africastalking-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "b22764ae393e4123c5479815d4cc3f1a", "sha256": "6357448788d1c4e3a7aaa0f45606bd4752edbbd76a7ac1d3229259d1afa7cd40" }, "downloads": -1, "filename": "africastalking-1.0.4.tar.gz", "has_sig": false, "md5_digest": "b22764ae393e4123c5479815d4cc3f1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10334, "upload_time": "2018-03-02T14:05:17", "url": "https://files.pythonhosted.org/packages/21/ed/020175f4a381e9f6ec8cda6f57e29f0c7c297d8530dd47cc2251873a7984/africastalking-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "d689133abe9e174f8dd0246a451293dc", "sha256": "bbe5cc2b1a4a3effb184a456f83b2509490047b17c84b4f4f5e2640ba095e3b2" }, "downloads": -1, "filename": "africastalking-1.0.5.tar.gz", "has_sig": false, "md5_digest": "d689133abe9e174f8dd0246a451293dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13135, "upload_time": "2018-03-02T14:32:54", "url": "https://files.pythonhosted.org/packages/5d/c7/20f60b3380f31ad033557189e86fae59427b0d28b924575dbad7f4ab5fa6/africastalking-1.0.5.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "dfee47a7cefea125c9cd78aee3344666", "sha256": "4207b1f5d05cd46f40fa1465b27af956ca300a16c8bcf18337b7a68b517fe43e" }, "downloads": -1, "filename": "africastalking-1.1.0.tar.gz", "has_sig": false, "md5_digest": "dfee47a7cefea125c9cd78aee3344666", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13513, "upload_time": "2018-03-20T05:18:45", "url": "https://files.pythonhosted.org/packages/58/27/60a4f2ab82c767696b618f166775a02293730b95000c2b2fe2f68ad50b85/africastalking-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "137840db3eb99dbfbb52ca46ee6c7126", "sha256": "54f4e6c03d33a7672eacbae73a72793f3f94ba06a023f62afb156b6687aa128f" }, "downloads": -1, "filename": "africastalking-1.1.1.tar.gz", "has_sig": false, "md5_digest": "137840db3eb99dbfbb52ca46ee6c7126", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13955, "upload_time": "2018-03-21T09:42:23", "url": "https://files.pythonhosted.org/packages/fa/32/a15948858e3a15d1f74ab5b5709fd073a8bf16d2e2056c2c685e4e35dfa7/africastalking-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "402c986abdf005029c3cdae3c1ee3c1a", "sha256": "78a978727be7aab0d19401a68fc43f2ad81c85cefadf6e0f5e36f37bd88f5ff7" }, "downloads": -1, "filename": "africastalking-1.1.2.tar.gz", "has_sig": false, "md5_digest": "402c986abdf005029c3cdae3c1ee3c1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13921, "upload_time": "2018-03-23T07:09:06", "url": "https://files.pythonhosted.org/packages/e0/c6/7d3108ec3d1452d8e402cc8bb9e918d3d74d1ce7fcdaaf94c87ac6163199/africastalking-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "3b79ff869c56259b66d9b4015bc074e8", "sha256": "90938b0612b39f48dd6c52edea8d417f53f0f648b7c63d19901b7b35137c42be" }, "downloads": -1, "filename": "africastalking-1.1.3.tar.gz", "has_sig": false, "md5_digest": "3b79ff869c56259b66d9b4015bc074e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14034, "upload_time": "2018-03-23T10:49:44", "url": "https://files.pythonhosted.org/packages/28/29/746e1a0d271ab565725209e4f01c41d3770ce609dbe94313f2e4d9f6eac7/africastalking-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "8318bccfb570f9aa5324d4142e812afa", "sha256": "d243f8b3de9c0951ec4caf9d032cdb2bb3f42cf5988984e369e129b2122cecb1" }, "downloads": -1, "filename": "africastalking-1.1.4.tar.gz", "has_sig": false, "md5_digest": "8318bccfb570f9aa5324d4142e812afa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14015, "upload_time": "2018-04-10T08:57:37", "url": "https://files.pythonhosted.org/packages/85/45/4fb500b7a57107ba056797a60306b19bc0e245b9adee730b14e1f000779d/africastalking-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "3d89a59fc16b22d5f7f35c0bc1593581", "sha256": "c10ba1d6b4572be4b8d96a8a19a66a9c1305f8c082cc26c94dd8001dfb3aef9b" }, "downloads": -1, "filename": "africastalking-1.1.5.tar.gz", "has_sig": false, "md5_digest": "3d89a59fc16b22d5f7f35c0bc1593581", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15255, "upload_time": "2018-10-29T15:09:50", "url": "https://files.pythonhosted.org/packages/c4/55/660bd91e2e3e792ad48b0129c521eb0a13378770a7e66aedf8dfcef8786c/africastalking-1.1.5.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "aa6b74c6ae6b090b9c2016d29abcdb7b", "sha256": "f6772b666ae65f5ada63857afb20005a172d3ef45d31cab52456d659bf82013b" }, "downloads": -1, "filename": "africastalking-1.1.6.tar.gz", "has_sig": false, "md5_digest": "aa6b74c6ae6b090b9c2016d29abcdb7b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7.10", "size": 16948, "upload_time": "2019-06-04T11:35:55", "url": "https://files.pythonhosted.org/packages/39/1f/9c7f219216b833be6d15f9013a11f3001198f6c187aa4bb890ee4b47b475/africastalking-1.1.6.tar.gz" } ], "1.1.7": [ { "comment_text": "", "digests": { "md5": "da86ea3a63ba339145f8e9ffb9e62db1", "sha256": "a63f38eced2ff4c0307512e01f5266861ee90fd51485b0834d3f19415d08bdd7" }, "downloads": -1, "filename": "africastalking-1.1.7-py3-none-any.whl", "has_sig": false, "md5_digest": "da86ea3a63ba339145f8e9ffb9e62db1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7.10", "size": 17773, "upload_time": "2019-08-06T08:12:32", "url": "https://files.pythonhosted.org/packages/6a/73/518b9514d210bd60c614daef92c3c80fed58e4e79ea1cd726f28e79ecbde/africastalking-1.1.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f96035416a59c36ed8c67f5ed128f2a6", "sha256": "be3824f72ff71037aae18889d2beaebeb4719e9c4c7e00b9428c9c21c413b4c5" }, "downloads": -1, "filename": "africastalking-1.1.7.tar.gz", "has_sig": false, "md5_digest": "f96035416a59c36ed8c67f5ed128f2a6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7.10", "size": 17348, "upload_time": "2019-08-06T08:12:35", "url": "https://files.pythonhosted.org/packages/9d/a1/29167fd3c9b3a1e8c07ac165b258135259b43f8a3c52101a86c5d8394c67/africastalking-1.1.7.tar.gz" } ], "1.1.8": [ { "comment_text": "", "digests": { "md5": "5eb2241aad04e358d1065e09358c90f0", "sha256": "60899a19dcbb93fe444ab1fd345f2abbab3790a31a15e3554cce106be9bb9725" }, "downloads": -1, "filename": "africastalking-1.1.8-py3-none-any.whl", "has_sig": false, "md5_digest": "5eb2241aad04e358d1065e09358c90f0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7.10", "size": 18172, "upload_time": "2019-09-12T09:33:37", "url": "https://files.pythonhosted.org/packages/6f/58/6ba3cd859cb55bb7eb1424b8e46474c777461f56951f7894ac86dce2d430/africastalking-1.1.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "09e98fc5511dae7ada213399e189c08e", "sha256": "840897e20869f270070cbf50ee6445f52899ed9dfb13bad73f966cfa4450e1cc" }, "downloads": -1, "filename": "africastalking-1.1.8.tar.gz", "has_sig": false, "md5_digest": "09e98fc5511dae7ada213399e189c08e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7.10", "size": 17844, "upload_time": "2019-09-12T09:33:39", "url": "https://files.pythonhosted.org/packages/43/29/58e6c2937292d3c82765927e0c6f754ec1605df0219563301aefd0860fd0/africastalking-1.1.8.tar.gz" } ], "1.1.9": [ { "comment_text": "", "digests": { "md5": "54154f92bc5d5f266f7273675479b538", "sha256": "e16bda4253792e2565a9ac468203e3a8acd995dc9dbca4261c1d0021917557e5" }, "downloads": -1, "filename": "africastalking-1.1.9-py3-none-any.whl", "has_sig": false, "md5_digest": "54154f92bc5d5f266f7273675479b538", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7.10", "size": 18074, "upload_time": "2019-10-08T10:20:10", "url": "https://files.pythonhosted.org/packages/6b/6b/441955e93648006d33161e11af368e1b6dc6fc42f582404d53ba6f17200a/africastalking-1.1.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d038c8ecc78ffefd18dfd2dad99b5a50", "sha256": "dff69070cfc7f47666e7fcdab5d4e98f552a073e8e8641e3f3bd231b1d1384e8" }, "downloads": -1, "filename": "africastalking-1.1.9.tar.gz", "has_sig": false, "md5_digest": "d038c8ecc78ffefd18dfd2dad99b5a50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7.10", "size": 17769, "upload_time": "2019-10-08T10:20:13", "url": "https://files.pythonhosted.org/packages/48/7c/ca69342cee081c02e7801dca0dbea3a25f540dbdd7b364e34f14b2dbbda9/africastalking-1.1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "54154f92bc5d5f266f7273675479b538", "sha256": "e16bda4253792e2565a9ac468203e3a8acd995dc9dbca4261c1d0021917557e5" }, "downloads": -1, "filename": "africastalking-1.1.9-py3-none-any.whl", "has_sig": false, "md5_digest": "54154f92bc5d5f266f7273675479b538", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7.10", "size": 18074, "upload_time": "2019-10-08T10:20:10", "url": "https://files.pythonhosted.org/packages/6b/6b/441955e93648006d33161e11af368e1b6dc6fc42f582404d53ba6f17200a/africastalking-1.1.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d038c8ecc78ffefd18dfd2dad99b5a50", "sha256": "dff69070cfc7f47666e7fcdab5d4e98f552a073e8e8641e3f3bd231b1d1384e8" }, "downloads": -1, "filename": "africastalking-1.1.9.tar.gz", "has_sig": false, "md5_digest": "d038c8ecc78ffefd18dfd2dad99b5a50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7.10", "size": 17769, "upload_time": "2019-10-08T10:20:13", "url": "https://files.pythonhosted.org/packages/48/7c/ca69342cee081c02e7801dca0dbea3a25f540dbdd7b364e34f14b2dbbda9/africastalking-1.1.9.tar.gz" } ] }