Connect a new social network
Store OAuth configuration for a social network platform to enable account connection and content publishing. This endpoint implements the Bring Your Own Key (BYOK) model, allowing you to use your own OAuth applications for complete control over the authentication flow.
Workflow:
- Obtain OAuth credentials from the social network's developer portal (see platform-specific guides)
- Store the social network using this endpoint
- Connect social accounts using the social accounts API
- Create and schedule posts
Security: The client_secret is encrypted at rest using industry-standard encryption and is never returned in API responses. Only the client_key (public identifier) is included in subsequent GET requests.
Important: Before using this endpoint, ensure you have valid OAuth credentials from the target platform's developer portal. Each platform has different requirements, approval processes, and credential naming conventions. Check our configuration documentation for platform-specific guides.
/v1/social-networksSocial network platform identifier. Each platform requires specific OAuth credentials obtained from their respective developer portals. Refer to our configuration guides for detailed instructions on obtaining credentials for each platform.
"threads" | "bluesky" | "x" | "linkedin" | "youtube" | "instagram" | "facebook" | "tiktok" | "pinterest"OAuth Client ID, API Key, or App ID from the social network's developer portal. This is the public identifier for your OAuth application. Different platforms use different terminology (e.g., X/Twitter uses "Client ID", Meta apps use "App ID", LinkedIn uses "Client ID"). Obtain this from the respective platform's developer console after creating an application.
1 <= lengthOAuth Client Secret, API Secret, or App Secret from the social network's developer portal. This is a private credential that should be kept secure and never exposed in client-side code or logs. Different platforms use different terminology (e.g., "Client Secret", "App Secret", "Consumer Secret"). This value is encrypted at rest and never returned in subsequent API responses.
1 <= lengthResponse Body
curl -X POST "https://api.outstand.so/v1/social-networks" \ -H "Content-Type: application/json" \ -d '{ "network": "x", "client_key": "abc123xyz789", "client_secret": "secret_abc123xyz789_do_not_share" }'{
"success": true,
"message": "Social network created successfully",
"data": {
"id": "abc123",
"network": "x",
"client_key": "your_client_key_here",
"createdAt": "2025-01-15T10:30:00Z",
"updatedAt": "2025-01-15T10:30:00Z"
}
}{
"success": false,
"error": "Invalid payload",
"details": {
"network": {
"_errors": [
"Required"
]
}
}
}{
"success": false,
"error": "Internal server error",
"message": "Database connection failed"
}