{"id":22496804,"url":"https://github.com/keosariel/sendchamp-py","last_synced_at":"2025-08-03T03:32:19.066Z","repository":{"id":62591220,"uuid":"485260844","full_name":"keosariel/sendchamp-py","owner":"keosariel","description":"Sendchamp API wrapper","archived":false,"fork":false,"pushed_at":"2022-04-25T20:27:24.000Z","size":30,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-05-22T00:06:01.373Z","etag":null,"topics":["api-client","api-wrapper","python3","sendchamp"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/keosariel.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}},"created_at":"2022-04-25T07:11:06.000Z","updated_at":"2023-10-07T18:52:52.000Z","dependencies_parsed_at":"2022-11-04T08:18:22.561Z","dependency_job_id":null,"html_url":"https://github.com/keosariel/sendchamp-py","commit_stats":null,"previous_names":["keosariel/sendchamp-py"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keosariel%2Fsendchamp-py","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keosariel%2Fsendchamp-py/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keosariel%2Fsendchamp-py/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keosariel%2Fsendchamp-py/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/keosariel","download_url":"https://codeload.github.com/keosariel/sendchamp-py/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228520736,"owners_count":17932629,"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":["api-client","api-wrapper","python3","sendchamp"],"created_at":"2024-12-06T20:14:23.983Z","updated_at":"2024-12-06T20:14:24.786Z","avatar_url":"https://github.com/keosariel.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sendchamp-py\nSendchamp API wrapper\n\n## Installation\n\n```pip install sendchamp-py```\n\n```py\nfrom sendchamp import Sendchamp\n\nsendchamp = Sendchamp(public_key=PUBLIC_KEY)\n```\n\n\n## Sendchamp API Methods \n\n1. **[SMS](#sms)**\n   * Send SMS\n   * Create Sender ID\n   * SMS Delivery report\n   * Bulk SMS Delivery report\n  \n2. **[Voice](#voice)**\n   * Text-to-Speech\n   * Audio File-to-voice\n   * Delivery Report\n  \n3. **Customer**\n   * [Customer](#customer)\n     * Create Customer\n     * List Customer\n     * Update Customer\n     * Delete Customer\n    \n   * [Customer Group](#customer-group)\n     * Create customer group\n     * List customer groups\n     * Update customer group\n  \n4. **[Whatsapp](#whatsapp)**\n   * Send Template\n   * Send Message\n   * Send Video\n   * Send Audio\n   * Send Location\n   * Send Sticker\n\n5. **[Verification](#verification)**\n   * Send OTP\n   * Confirm OTP\n\n6. **[Email](#email)**\n   * Send Email\n\n\n## SMS\n\n**Sending SMS**\n\n```py\ndata, error = sendchamp.sms.send(\n   to=[\"2342345678912\"],\n   message= \"message test\",\n   sender_name=\"Sendchamp\",\n   route= \"international\"\n)\n```\n\n**Create Sender ID**\n\n```py\ndata, error = sendchamp.sms.create_sender_id(\n    name=\"CompanyName\",\n    sample= \"sample\",\n    use_case=\"marketing\"\n)\n```\n\n**SMS Delivery report**\n\n```py\ndata, error = sendchamp.sms.delivery_report(\n    sms_uid=uid\n)\n```\n\n**Bulk SMS Delivery report**\n\n```py\ndata, error = sendchamp.sms.bulk_delivery_report(\n    bulk_sms_uid=uid\n)\n```\n\n## Voice\n\n**Text-to-Speech**\n\n```py\ndata, error = sendchamp.voice.text_to_speech(\n    customer_mobile_number=[\"2342345678912\"],\n    message= \"register your nin\",\n    type=\"outgoing\",\n    repeat=2\n)\n```\n\n**File-to-Voice**\n\n```py\ndata, error = sendchamp.voice.audio_to_voice(\n    customer_mobile_number=[\"2342345678912\"],\n    path= \"https://sample-videos.com/audio/mp3/crowd-cheering.mp3\",\n    repeat=2\n)\n```\n\n**Voice Delivery Report**\n\n```py\ndata, error = sendchamp.voice.delivery_report(\n    voice_uid=uid\n)\n```\n\n## Customer\n\n**Create Customer**\n\n```py\ndata, error = sendchamp.customer.create(\n    phone_number=\"2342345678912\",\n    first_name=\"kenneth\",\n    last_name=\"gabriel\",\n    email=\"kennethgabriel78@gmail.com\"\n)\n```\n\n**List Customer**\n\n```py\ndata, error = sendchamp.customer.list()\n```\n\n**Update Customer**\n\n```py\ndata, error = sendchamp.customer.update(\n    external_user_id=uid,\n    first_name=\"kenneth_\",\n    last_name=\"gabriel_\",\n    phone_number=\"2342345678912\",\n    email=\"kennethgabriel@gmail.com\"\n)\n```\n\n**Delete Customer**\n\n```py\ndata, error = sendchamp.customer.delete(uid)\n```\n\n## Customer Group\n\n**Create Group**\n\n```py\ndata, error = sendchamp.customer.group.create(\n                    name=\"Waitlist\", \n                    description=\"first users\"\n              )\n```\n\n**List**\n```py\ndata, error = sendchamp.customer.group.list(\n                  name=\"Waitlist\", \n                  sample=\"sample\",\n                  use_case=\"use case\"\n              )\n```\n\n**Update Customer Group**\n\n```py\ndata, error   = sendchamp.customer.group.update(\n    uid=uid,\n    name=\"Premium Users\", \n    description=\"Paying users\")\n```\n\n## Whatsapp\n\n**Send Template**\n\n```py\ndata, error   = sendchamp.whatsapp.send_template(\n    sender=\"2342345678912\",\n    recipient=\"2345678912345\",\n    template_code=\"template code\",\n    custom_data={\"Body\": {}}\n)\n```\n\n**Send Message**\n\n```py\ndata, error = sendchamp.whatsapp.send_message(\n    sender=\"234810000000\",\n    recipient=\"2342345678912\",\n    message=\"message\"\n)\n```\n\n**Send Video**\n\n```py\ndata, error = sendchamp.whatsapp.send_video(\n    sender=\"234810000000\",\n    recipient=\"234811111111\",\n    link=\"https://sample-videos.com/audio/mp3/crowd-cheering.mp3\"\n)\n```\n\n**Send Audio**\n\n```py\ndata, error = sendchamp.whatsapp.send_audio(\n    sender=\"234810000000\",\n    recipient=\"234811111111\",\n    link=\"https://sample-videos.com/audio/mp3/crowd-cheering.mp3\"\n)\n```\n\n**Send Location**\n\n```py\ndata, error = sendchamp.whatsapp.send_location(\n    sender=\"234810000000\",\n    recipient=\"234811111111\",\n    longititude=46.662787,\n    latitude=23.553610,\n    name=\"Robbu Brazil\",\n    address=\"Av. Angélica, 2530 - Bela Vista, São Paulo - SP, 01228-200\"\n)\n```\n\n**Send Sticker**\n\n```py\ndata, error = sendchamp.whatsapp.send_audio(\n    sender=\"234810000000\",\n    recipient=\"234811111111\",\n    link=\"https://studio.posit.us/api/samples/sticker.webp\"\n)\n```\n\n## Verification\n\n**Send OTP**\n\n```py\ndata, error = sendchamp.verification.send_otp(\n    channel=\"channel\", \n    sender=\"234810000000\", \n    token_type=\"numeric\", \n    token_length=5, \n    expiration_time=4, \n    customer_email_address=\"customer@gmail.com\",\n    customer_mobile_number=\"234811111111\", \n    meta_data={}, \n    token=\"your_token\"\n)\n```\n\n**Confirm OTP**\n\n```py\ndata, error = sendchamp.verification.confirm_otp(\n                verification_reference=ref,\n                verification_code=code\n              )\n```\n\n## Email\n\n**Send Email**\n\n```py\ndata, error = sendchamp.email.send(\n    subject=\"Sendchamp subject\",\n    sender={\n        \"email\":\"keosariel@sendchamp.com\",\n        \"name\":\"keosariel\"\n    },\n    to=[{\n        \"email\":\"kennethgabriel78@gmail.com\",\n        \"name\":\"gabriel\"\n    }],\n    message_body={\n        \"type\": \"text/html\",\n        \"value\": \"email fron sendchamp\"\n    }\n)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeosariel%2Fsendchamp-py","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeosariel%2Fsendchamp-py","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeosariel%2Fsendchamp-py/lists"}