SocialClaw Browser Authentication API
Same-origin routes used by the SocialClaw sign-in, sign-up, verification, and password recovery pages.
Same-origin routes used by the SocialClaw sign-in, sign-up, verification, and password recovery pages.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/getsocialclaw-com:getsocialclaw-com-browser-authentication-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: SocialClaw Browser Authentication API
version: 1.0.0
description: Complete SocialClaw API reference for social account connections, media uploads, validation, scheduling, publishing, analytics, dashboard APIs, webhooks, and delivery URLs.
servers:
- url: https://getsocialclaw.com
description: SocialClaw production API
security:
- BearerAuth: []
tags:
- name: Browser Authentication
description: Same-origin routes used by the SocialClaw sign-in, sign-up, verification, and password recovery pages.
paths:
/v1/auth/config:
get:
tags:
- Browser Authentication
operationId: get_v1_auth_config
summary: Authentication configuration
description: Returns the sign-in providers currently available to the web client.
security: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/EmailAuthConfigResponse'
'400':
description: Invalid request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, or unauthorized credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Request body or semantic validation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-socialclaw-auth: none
x-socialclaw-surface: site
/v1/auth/email/sign-up:
post:
tags:
- Browser Authentication
operationId: post_v1_auth_email_sign_up
summary: Start email sign-up
description: Creates a pending credential and sends a single-use verification link. No workspace is created until the address is verified.
security: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EmailSignUpRequest'
responses:
'202':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/EmailAuthResponse'
'400':
description: Invalid request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, or unauthorized credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Request body or semantic validation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-socialclaw-auth: none
x-socialclaw-surface: site
/v1/auth/email/sign-in:
post:
tags:
- Browser Authentication
operationId: post_v1_auth_email_sign_in
summary: Email sign-in
description: Verifies an email credential and sets the signed dashboard session cookie.
security: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EmailSignInRequest'
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/EmailAuthResponse'
'400':
description: Invalid request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, or unauthorized credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Request body or semantic validation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-socialclaw-auth: none
x-socialclaw-surface: site
/v1/auth/email/verify:
post:
tags:
- Browser Authentication
operationId: post_v1_auth_email_verify
summary: Verify email
description: Consumes a verification token, links or creates the SocialClaw user, and sets the dashboard session cookie.
security: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EmailTokenRequest'
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/EmailAuthResponse'
'400':
description: Invalid request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, or unauthorized credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Request body or semantic validation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-socialclaw-auth: none
x-socialclaw-surface: site
/v1/auth/email/forgot-password:
post:
tags:
- Browser Authentication
operationId: post_v1_auth_email_forgot_password
summary: Request password reset
description: Sends an account recovery email and always returns the same response to prevent account discovery.
security: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ForgotPasswordRequest'
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/EmailAuthResponse'
'400':
description: Invalid request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, or unauthorized credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Request body or semantic validation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-socialclaw-auth: none
x-socialclaw-surface: site
/v1/auth/email/reset-password:
post:
tags:
- Browser Authentication
operationId: post_v1_auth_email_reset_password
summary: Reset password
description: Consumes a reset token, replaces the password hash, and invalidates older dashboard sessions.
security: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ResetPasswordRequest'
responses:
'200':
description: Successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/EmailAuthResponse'
'400':
description: Invalid request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, or unauthorized credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Request body or semantic validation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-socialclaw-auth: none
x-socialclaw-surface: site
components:
schemas:
EmailAuthConfigResponse:
type: object
description: Authentication methods available to the web sign-in experience.
additionalProperties: true
properties:
ok:
const: true
providers:
type: object
description: Enabled sign-in providers.
additionalProperties: false
properties:
google:
type: boolean
description: Whether Google sign-in is configured.
apple:
type: boolean
description: Whether Apple sign-in is configured.
email:
type: boolean
description: Whether email and password authentication is enabled.
required:
- google
- apple
- email
password:
type: object
description: Password input limits.
additionalProperties: false
properties:
minLength:
type: integer
description: Minimum password length.
maxLength:
type: integer
description: Maximum password length.
required:
- minLength
- maxLength
required:
- ok
- providers
- password
EmailAuthResponse:
type: object
description: Email authentication result.
additionalProperties: true
properties:
ok:
const: true
message:
type:
- string
- 'null'
description: User-facing next-step message.
redirectTo:
type:
- string
- 'null'
description: Safe relative path to open after success.
debugUrl:
type:
- string
- 'null'
description: Local-development email link. Never returned in production.
required:
- ok
EmailSignInRequest:
type: object
description: Signs in with a verified email credential.
additionalProperties: true
properties:
email:
type: string
description: Email address.
format: email
password:
type: string
description: Password.
format: password
next:
type:
- string
- 'null'
description: Safe relative path to open after sign-in.
required:
- email
- password
ResetPasswordRequest:
type: object
description: Replaces an email credential using a single-use reset token.
additionalProperties: false
properties:
token:
type: string
description: Single-use password reset token.
password:
type: string
description: New password. The configured length limits apply.
format: password
required:
- token
- password
EmailTokenRequest:
type: object
description: Consumes a single-use email authentication token.
additionalProperties: true
properties:
token:
type: string
description: Single-use verification token.
next:
type:
- string
- 'null'
description: Safe relative path to open after verification.
required:
- token
EmailSignUpRequest:
type: object
description: Starts email account creation and sends a verification link.
additionalProperties: true
properties:
email:
type: string
description: Email address.
format: email
password:
type: string
description: Password. The configured length limits apply.
format: password
next:
type:
- string
- 'null'
description: Safe relative path to open after verification.
required:
- email
- password
ForgotPasswordRequest:
type: object
description: Requests account recovery without disclosing whether the address is registered.
additionalProperties: false
properties:
email:
type: string
description: Email address.
format: email
required:
- email
ErrorResponse:
type: object
description: Standard error response returned by JSON API routes.
additionalProperties: false
properties:
ok:
const: false
description: Always false for errors.
code:
type:
- string
- 'null'
description: Stable machine-readable error code.
message:
type: string
description: Human-readable error message.
details:
type:
- object
- array
- string
- number
- boolean
- 'null'
description: Optional route-specific details.
required:
- ok
- message
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: SocialClaw API key
DashboardSession:
type: apiKey
in: cookie
name: socialclaw_dash_session
WebhookSignature:
type: apiKey
in: header
name: x-signature
externalDocs:
description: Human-readable SocialClaw API documentation.
url: https://getsocialclaw.com/docs/api
x-provenance:
method: harvested
publisher: SocialClaw
source: https://getsocialclaw.com/openapi.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)