ホーム/リーガル&契約/sms-10dlc-registration
S

sms-10dlc-registration

by @sentdmv
4.3(120)

このスキルは、米国A2P 10DLCのブランドおよびキャンペーン登録の準備と検証を行い、証拠パケットのチェック、APIリクエストの構築、サンドボックス検証、TCRステータスの追跡を網羅します。開発者がコンプライアンスエラーを回避し、手戻りを減らし、登録プロセスを効率的かつコンプライアンス準拠で進めるのに役立ちます。特に継承戦略と拒否理由の修正に有用です。

10dlca2psmscomplianceregistrationGitHub
インストール方法
npx skills add https://github.com/sentdm/sent-plugin --skill sms-10dlc-registration
compare_arrows

Before / After 効果比較

1
使用前

このスキルがない場合、開発者とコンプライアンスチームは証拠を手動で整理し、APIドキュメントを照合し、フィールド形式を繰り返し検証する必要がありました。継承戦略やコンプライアンス要件の誤解により登録が拒否され、やり直しが多発して時間がかかっていました。

使用後

このスキルは、標準化された証拠パケットの検証とAPIリクエストの検証を提供し、継承戦略とコンプライアンス要件を自動的に識別します。ユーザーは数分で正確な登録準備を完了でき、エラーと手戻りを大幅に削減し、リリースまでの時間を短縮できます。

SKILL.md

SMS 10DLC Registration

Use this skill for US A2P SMS over 10-digit long codes. Separate the compliance evidence packet from the exact Sent API request; they have different schemas and validators.

Current Sent resource model

There is no standalone brand CRUD path in the current v3 API.

  • Create a dedicated brand inside POST /v3/profiles using brand and inherit_tcr_brand: false.
  • List/create campaigns with GET|POST /v3/profiles/{profileId}/campaigns.
  • Update/delete with PUT|DELETE /v3/profiles/{profileId}/campaigns/{campaignId}.

Reject guidance that reintroduces a free-standing brand path.

Choose inheritance deliberately

BrandCampaignSettings
Inherit bothOrganization brand and campaigninherit_tcr_brand: true, inherit_tcr_campaign: true
Inherit brand, own campaignShared legal brand with tenant-specific trafficbrand true, campaign false
Own bothDedicated tenant/businessboth false and supply brand during profile creation

Inherited campaigns are read-only. A profile cannot supply brand while brand inheritance is true.

Two validation layers

Evidence readiness packet

The private packet uses the explicit internal version sent-10dlc-evidence/v1 and snake_case evidence fields. It is not an API payload.

python scripts/validate_10dlc_packet.py evidence.json

Collect legal identity, public website/policy links, consent proof, message flow, opt-in/opt-out/help responses and keywords, use cases, and realistic samples. See references/10dlc-evidence-checklist.md.

Sent campaign request

The API request uses exact camelCase and a campaign wrapper:

{
  "campaign": {
    "name": "Acme account notifications",
    "description": "Account and delivery notifications for opted-in customers.",
    "type": "App",
    "useCases": [
      {
        "messagingUseCaseUs": "ACCOUNT_NOTIFICATION",
        "sampleMessages": [
          "Acme Example: Your account preference was updated. Reply STOP to opt out."
        ]
      }
    ],
    "volume": "2000",
    "messageFlow": "Customers opt in in account settings before notifications begin.",
    "privacyPolicyLink": "https://example.com/privacy",
    "termsAndConditionsLink": "https://example.com/terms",
    "optinMessage": "Acme Example: You are subscribed. Reply STOP to opt out.",
    "optoutMessage": "Acme Example: You are unsubscribed and will receive no more messages.",
    "helpMessage": "Acme Example: Visit https://example.com/support for help.",
    "optinKeywords": "START,YES",
    "optoutKeywords": "STOP,UNSUBSCRIBE",
    "helpKeywords": "HELP,INFO"
  },
  "sandbox": true
}

Validate it with:

python scripts/validate_campaign_payload.py campaign.json

API use cases

Support all 13 current values:

MARKETING, ACCOUNT_NOTIFICATION, CUSTOMER_CARE, FRAUD_ALERT, TWO_FA, DELIVERY_NOTIFICATION, SECURITY_ALERT, M2M, MIXED, HIGHER_EDUCATION, POLLING_VOTING, PUBLIC_SERVICE_ANNOUNCEMENT, and LOW_VOLUME.

Each use case structurally accepts 1–5 samples, each no longer than 1,024 characters. The compliance layer requires at least two samples for marketing and mixed traffic, including low-volume mixed. Keep that policy distinction visible instead of pretending OpenAPI requires two for all traffic.

Volume and status

volume is optional and, when supplied, is a numeric string. Values below "2000" use the documented low-volume tier; "2000" is the boundary to the next tier.

Campaign responses currently expose statuses SENT_CREATED, ACTIVE, and EXPIRED, plus submittedToTCR. Preserve unknown future status strings. Do not confuse a successful Sent record creation with TCR submission or carrier activation.

Safe workflow

  1. Confirm this is US A2P 10DLC traffic and the actual sending business is identified.
  2. Select brand/campaign inheritance.
  3. Validate the versioned evidence packet.
  4. Create or confirm the profile brand.
  5. Translate evidence into the exact camelCase campaign request.
  6. Validate locally and use sandbox: true.
  7. Show the payload and obtain confirmation before a real create/update/delete.
  8. Store profile ID, campaign ID, submittedToTCR, raw status, and review evidence.
  9. Complete the profile with required webHookUrl only after prerequisites are ready.

Never use real consumer data in fixtures or samples. Use references/tcr-use-cases.md for classification and references/10dlc-rejection-remediation.md for failures.

ユーザーレビュー (0)

レビューを書く

効果
使いやすさ
ドキュメント
互換性

レビューなし

統計データ

インストール数1.9K
評価4.3 / 5.0
バージョン
更新日2026年8月23日
比較事例1 件

ユーザー評価

4.3(120)
5
37%
4
43%
3
13%
2
5%
1
2%

この Skill を評価

0.0

対応プラットフォーム

🤖claude-code

タイムライン

作成2026年8月16日
最終更新2026年8月23日
🎁 Agent 知識カード
アンケート