signalhouse / sdk
Official PHP SDK for the SignalHouse platform
dev-main
2026-04-21 01:11 UTC
Requires
- php: >=8.1
- guzzlehttp/guzzle: ^7.0
This package is not auto-updated.
Last update: 2026-04-21 23:17:23 UTC
README
Official PHP SDK for the SignalHouse platform.
Requirements
- PHP 8.1 or higher
- Guzzle HTTP client 7.x
Installation
composer require signalhouse/sdk
Quick Start
use SignalHouse\SDK\SignalHouseSDK; $sdk = new SignalHouseSDK( apiKey: 'your-api-key', baseUrl: 'https://v2.signalhouse.io' ); // Login $response = $sdk->auth->login('user@example.com', 'password'); // Search for available phone numbers $numbers = $sdk->numbers->getAvailablePhoneNumbers([ 'country' => 'US', 'state' => 'IL', 'npa' => '217', ]); // Purchase a phone number $result = $sdk->numbers->purchasePhoneNumber( phoneNumbers: ['2175551234'], subgroupId: 'SG12345678' ); // Send an SMS $result = $sdk->messages->sendSMS( senderPhoneNumber: '2175551234', recipientPhoneNumbers: '3125559876', messageBody: 'Hello from SignalHouse!' ); // Get brands $brands = $sdk->brands->getBrands(['groupId' => 'G12345678']); // Check wallet balance $wallet = $sdk->billing->getWallet('G12345678');
Available Domains
| Domain | Description |
|---|---|
$sdk->auth |
Authentication and login history |
$sdk->billing |
Wallet, payment methods, transactions, invoices, fees |
$sdk->brands |
10DLC brand registration and management |
$sdk->campaigns |
10DLC campaign management |
$sdk->groups |
Group management |
$sdk->landings |
Landing page management (with file uploads) |
$sdk->messages |
Send SMS/MMS/Group MMS, message logs, analytics |
$sdk->notifications |
Notification management |
$sdk->numbers |
Phone number search, purchase, assign, release, transfer |
$sdk->shortlinks |
URL shortener |
$sdk->subgroups |
Subgroup management |
$sdk->subscriptions |
Subscription and plan management |
$sdk->users |
User management and notification preferences |
$sdk->webhooks |
Webhook management |
Admin Endpoints
To access admin-only endpoints, initialize with enableAdmin: true:
$sdk = new SignalHouseSDK( apiKey: 'your-admin-api-key', baseUrl: 'https://v2.signalhouse.io', enableAdmin: true ); // Admin: approve a campaign $sdk->campaigns->admin->approveCampaign('campaign-id'); // Admin: list all groups $sdk->groups->admin->getGroups(['page' => 1, 'limit' => 20]);
Response Format
All methods return a standardized response array:
// Success [ 'success' => true, 'data' => [...], // Response data 'status' => 200, // HTTP status code ] // Error [ 'success' => false, 'error' => 'Error message', 'status' => 400, // HTTP status code ]
License
ISC - Signal House LLC