Skip to main content

telnyx-10dlc-python

Register brands and campaigns for 10DLC (10-digit long code) A2P messaging compliance in the US. Manage campaign assignments to phone numbers. This skill provides Python SDK examples.

Quellinformationen

Repository
team-telnyx/telnyx-toolkit
Letzte Quellaktivität
10. Februar 2026 um 20:41
Erkannte Sprache von SKILL.md
Englisch
Sterne
3
Forks
2

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
telnyx-10dlc-python
description
Register brands and campaigns for 10DLC (10-digit long code) A2P messaging compliance in the US. Manage campaign assignments to phone numbers. This skill provides Python SDK examples.
metadata
{"author":"telnyx","product":"10dlc","language":"python","generated_by":"telnyx-ext-skills-generator"}
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. --> # Telnyx 10Dlc - Python ## Installation ```bash pip install telnyx ``` ## Setup ```python import os from telnyx import Telnyx client = Telnyx( api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted ) ``` All examples below assume `client` is already initialized as shown above. ## List Brands This endpoint is used to list all brands associated with your organization. `GET /10dlc/brand` ```python page = client.messaging_10dlc.brand.list() page = page.records[0] print(page.identity_status) ``` ## Create Brand This endpoint is used to create a new brand. `POST /10dlc/brand` — Required: `entityType`, `displayName`, `country`, `email`, `vertical` ```python telnyx_brand = client.messaging_10dlc.brand.create( country="US", display_name="ABC Mobile", email="email", entity_type="PRIVATE_PROFIT", vertical="TECHNOLOGY", ) print(telnyx_brand.identity_status) ``` ## Get Brand Retrieve a brand by `brandId`. `GET /10dlc/brand/{brandId}` ```python brand = client.messaging_10dlc.brand.retrieve( "brandId", ) print(brand) ``` ## Update Brand Update a brand's attributes by `brandId`. `PUT /10dlc/brand/{brandId}` — Required: `entityType`, `displayName`, `country`, `email`, `vertical` ```python telnyx_brand = client.messaging_10dlc.brand.update( brand_id="brandId", country="US", display_name="ABC Mobile", email="email", entity_type="PRIVATE_PROFIT", vertical="TECHNOLOGY", ) print(telnyx_brand.identity_status) ``` ## Delete Brand Delete Brand. `DELETE /10dlc/brand/{brandId}` ```python client.messaging_10dlc.brand.delete( "brandId", ) ``` ## Resend brand 2FA email `POST /10dlc/brand/{brandId}/2faEmail` ```python client.messaging_10dlc.brand.resend_2fa_email( "brandId", ) ``` ## List External Vettings Get list of valid external vetting record for a given brand `GET /10dlc/brand/{brandId}/externalVetting` ```python external_vettings = client.messaging_10dlc.brand.external_vetting.list( "brandId", ) print(external_vettings) ``` ## Order Brand External Vetting Order new external vetting for a brand `POST /10dlc/brand/{brandId}/externalVetting` — Required: `evpId`, `vettingClass` ```python response = client.messaging_10dlc.brand.external_vetting.order( brand_id="brandId", evp_id="evpId", vetting_class="vettingClass", ) print(response.create_date) ``` ## Import External Vetting Record This operation can be used to import an external vetting record from a TCR-approved vetting provider. `PUT /10dlc/brand/{brandId}/externalVetting` — Required: `evpId`, `vettingId` ```python response = client.messaging_10dlc.brand.external_vetting.imports( brand_id="brandId", evp_id="evpId", vetting_id="vettingId", ) print(response.create_date) ``` ## Revet Brand This operation allows you to revet the brand. `PUT /10dlc/brand/{brandId}/revet` ```python telnyx_brand = client.messaging_10dlc.brand.revet( "brandId", ) print(telnyx_brand.identity_status) ``` ## Get Brand SMS OTP Status by Brand ID Query the status of an SMS OTP (One-Time Password) for Sole Proprietor brand verification using the Brand ID. `GET /10dlc/brand/{brandId}/smsOtp` ```python response = client.messaging_10dlc.brand.retrieve_sms_otp_status( "4b20019b-043a-78f8-0657-b3be3f4b4002", ) print(response.brand_id) ``` ## Trigger Brand SMS OTP Trigger or re-trigger an SMS OTP (One-Time Password) for Sole Proprietor brand verification. `POST /10dlc/brand/{brandId}/smsOtp` — Required: `pinSms`, `successSms` ```python response = client.messaging_10dlc.brand.trigger_sms_otp( brand_id="4b20019b-043a-78f8-0657-b3be3f4b4002", pin_sms="Your PIN is @OTP_PIN@", success_sms="Verification successful!", ) print(response.brand_id) ``` ## Verify Brand SMS OTP Verify the SMS OTP (One-Time Password) for Sole Proprietor brand verification. `PUT /10dlc/brand/{brandId}/smsOtp` — Required: `otpPin` ```python client.messaging_10dlc.brand.verify_sms_otp( brand_id="4b20019b-043a-78f8-0657-b3be3f4b4002", otp_pin="123456", ) ``` ## Get Brand Feedback By Id Get feedback about a brand by ID. `GET /10dlc/brand_feedback/{brandId}` ```python response = client.messaging_10dlc.brand.get_feedback( "brandId", ) print(response.brand_id) ``` ## Submit Campaign Before creating a campaign, use the [Qualify By Usecase endpoint](https://developers.telnyx.com/api-reference/campaign/qualify-by-usecase) to ensure that the brand you want to assign a new campaign... `POST /10dlc/campaignBuilder` — Required: `brandId`, `description`, `usecase` ```python telnyx_campaign_csp = client.messaging_10dlc.campaign_builder.submit( brand_id="brandId", description="description", usecase="usecase", ) print(telnyx_campaign_csp.brand_id) ``` ## Qualify By Usecase This endpoint allows you to see whether or not the supplied brand is suitable for your desired campaign use case. `GET /10dlc/campaignBuilder/brand/{brandId}/usecase/{usecase}` ```python response = client.messaging_10dlc.campaign_builder.brand.qualify_by_usecase( usecase="usecase", brand_id="brandId", ) print(response.annual_fee) ``` ## List Campaigns Retrieve a list of campaigns associated with a supplied `brandId`. `GET /10dlc/campaign` ```python page = client.messaging_10dlc.campaign.list( brand_id="brandId", ) page = page.records[0] print(page.age_gated) ``` ## Get campaign Retrieve campaign details by `campaignId`. `GET /10dlc/campaign/{campaignId}` ```python telnyx_campaign_csp = client.messaging_10dlc.campaign.retrieve( "campaignId", ) print(telnyx_campaign_csp.brand_id) ``` ## Update campaign Update a campaign's properties by `campaignId`. `PUT /10dlc/campaign/{campaignId}` ```python telnyx_campaign_csp = client.messaging_10dlc.campaign.update( campaign_id="campaignId", ) print(telnyx_campaign_csp.brand_id) ``` ## Deactivate campaign Terminate a campaign. `DELETE /10dlc/campaign/{campaignId}` ```python response = client.messaging_10dlc.campaign.deactivate( "campaignId", ) print(response.time) ``` ## Submit campaign appeal for manual review Submits an appeal for rejected native campaigns in TELNYX_FAILED or MNO_REJECTED status. `POST /10dlc/campaign/{campaignId}/appeal` — Required: `appeal_reason` ```python response = client.messaging_10dlc.campaign.submit_appeal( campaign_id="5eb13888-32b7-4cab-95e6-d834dde21d64", appeal_reason="The website has been updated to include the required privacy policy and terms of service.", ) print(response.appealed_at) ``` ## Get Campaign Mno Metadata Get the campaign metadata for each MNO it was submitted to. `GET /10dlc/campaign/{campaignId}/mnoMetadata` ```python response = client.messaging_10dlc.campaign.get_mno_metadata( "campaignId", ) print(response._10999) ``` ## Get campaign operation status Retrieve campaign's operation status at MNO level. `GET /10dlc/campaign/{campaignId}/operationStatus` ```python response = client.messaging_10dlc.campaign.get_operation_status( "campaignId", ) print(response) ``` ## Get OSR campaign attributes `GET /10dlc/campaign/{campaignId}/osr_attributes` ```python response = client.messaging_10dlc.campaign.osr.get_attributes( "campaignId", ) print(response) ``` ## Get Sharing Status `GET /10dlc/campaign/{campaignId}/sharing` ```python response = client.messaging_10dlc.campaign.get_sharing_status( "campaignId", ) print(response.shared_by_me) ``` ## Accept Shared Campaign Manually accept a campaign shared with Telnyx `POST /10dlc/campaign/acceptSharing/{campaignId}` ```python response = client.messaging_10dlc.campaign.accept_sharing( "C26F1KLZN", ) print(response) ``` ## Get Campaign Cost `GET /10dlc/campaign/usecase_cost` ```python response = client.messaging_10dlc.campaign.usecase.get_cost( usecase="usecase", ) print(response.campaign_usecase) ``` ## List Shared Campaigns Retrieve all partner campaigns you have shared to Telnyx in a paginated fashion. `GET /10dlc/partner_campaigns` ```python page = client.messaging_10dlc.partner_campaigns.list() page = page.records[0] print(page.tcr_brand_id) ``` ## Get Single Shared Campaign Retrieve campaign details by `campaignId`. `GET /10dlc/partner_campaigns/{campaignId}` ```python telnyx_downstream_campaign = client.messaging_10dlc.partner_campaigns.retrieve( "campaignId", ) print(telnyx_downstream_campaign.tcr_brand_id) ``` ## Update Single Shared Campaign Update campaign details by `campaignId`. `PATCH /10dlc/partner_campaigns/{campaignId}` ```python telnyx_downstream_campaign = client.messaging_10dlc.partner_campaigns.update( campaign_id="campaignId", ) print(telnyx_downstream_campaign.tcr_brand_id) ``` ## Get Sharing Status `GET /10dlc/partnerCampaign/{campaignId}/sharing` ```python response = client.messaging_10dlc.partner_campaigns.retrieve_sharing_status( "campaignId", ) print(response) ``` ## List shared partner campaigns Get all partner campaigns you have shared to Telnyx in a paginated fashion This endpoint is currently limited to only returning shared campaigns that Telnyx has accepted. `GET /10dlc/partnerCampaign/sharedByMe` ```python page = client.messaging_10dlc.partner_campaigns.list_shared_by_me() page = page.records[0] print(page.brand_id) ``` ## List phone number campaigns `GET /10dlc/phone_number_campaigns` ```python page = client.messaging_10dlc.phone_number_campaigns.list() page = page.records[0] print(page.campaign_id) ``` ## Create New Phone Number Campaign `POST /10dlc/phone_number_campaigns` — Required: `phoneNumber`, `campaignId` ```python phone_number_campaign = client.messaging_10dlc.phone_number_campaigns.create( campaign_id="4b300178-131c-d902-d54e-72d90ba1620j", phone_number="+18005550199", ) print(phone_number_campaign.campaign_id) ``` ## Get Single Phone Number Campaign Retrieve an individual phone number/campaign assignment by `phoneNumber`. `GET /10dlc/phone_number_campaigns/{phoneNumber}` ```python phone_number_campaign = client.messaging_10dlc.phone_number_campaigns.retrieve( "phoneNumber", ) print(phone_number_campaign.campaign_id) ``` ## Create New Phone Number Campaign `PUT /10dlc/phone_number_campaigns/{phoneNumber}` — Required: `phoneNumber`, `campaignId` ```python phone_number_campaign = client.messaging_10dlc.phone_number_campaigns.update( campaign_phone_number="phoneNumber", campaign_id="4b300178-131c-d902-d54e-72d90ba1620j", phone_number="+18005550199", ) print(phone_number_campaign.campaign_id) ``` ## Delete Phone Number Campaign This endpoint allows you to remove a campaign assignment from the supplied `phoneNumber`.
Auf GitHub ansehen
Diese SKILL.md ist sehr gross, daher zeigt SkillsMP hier nur den ersten Abschnitt. Auf GitHub ansehen