Upload platform credentials
Upload or replace workspace-owned OAuth app credentials for one upstream platform. Platform Credentials are separate from Hosted Connect branding: credentials control the platform app identity and quota used by future POST/v1/connect/sessions OAuth flows, while Hosted Connect controls the pre-OAuth branding layer. On Basic, both surfaces share one selected platform slot.
Authorization
AuthorizationBearer <token>In header
Workspace API key, or a Clerk session JWT for dashboard callers.
Request Body
platformstring
Platform key for the upstream OAuth app.
Values:
Values:
facebook, instagram, linkedin, pinterest, tiktok, youtube, or twitter.client_idstring
Client ID, App ID, or Client Key copied from the platform developer portal.
client_secretstring
Client secret copied from the platform developer portal. UniPost stores it encrypted at rest and never returns client_secret from read endpoints.
Response Body
201
data.platformstring
Platform key that was created or replaced.
data.client_idstring
Public client ID that was saved. The client_secret is never returned.
data.created_atstring
Timestamp for the saved credential row.
request_idstring
Request identifier for debugging and support.
401
error.codestring
Usually "UNAUTHORIZED", "PLAN_FEATURE_NOT_AVAILABLE", "VALIDATION_ERROR", or "INTERNAL_ERROR".
error.normalized_codestring
Lowercase alias such as "plan_feature_not_available" or "validation_error".
error.messagestring
Human-readable error message.
request_idstring
Request identifier for debugging and support.
402
error.codestring
Usually "UNAUTHORIZED", "PLAN_FEATURE_NOT_AVAILABLE", "VALIDATION_ERROR", or "INTERNAL_ERROR".
error.normalized_codestring
Lowercase alias such as "plan_feature_not_available" or "validation_error".
error.messagestring
Human-readable error message.
request_idstring
Request identifier for debugging and support.
422
error.codestring
Usually "UNAUTHORIZED", "PLAN_FEATURE_NOT_AVAILABLE", "VALIDATION_ERROR", or "INTERNAL_ERROR".
error.normalized_codestring
Lowercase alias such as "plan_feature_not_available" or "validation_error".
error.messagestring
Human-readable error message.
request_idstring
Request identifier for debugging and support.
500
error.codestring
Usually "UNAUTHORIZED", "PLAN_FEATURE_NOT_AVAILABLE", "VALIDATION_ERROR", or "INTERNAL_ERROR".
error.normalized_codestring
Lowercase alias such as "plan_feature_not_available" or "validation_error".
error.messagestring
Human-readable error message.
request_idstring
Request identifier for debugging and support.
A successful upload replaces any previous credentials for the same platform. Basic supports one shared custom platform slot across Platform Credentials and Hosted Connect branding; Growth, Team, and Enterprise support all supported platforms. See the Platform Credentials guide for platform setup steps.