Skip to content

Quickstart

This is the five-minute path from a fresh account to your first published post.

1. Sign up

Open app.sosyabot.com/auth/signup. The form is a two-step flow:

Step 1 — Email. Enter your email. Sosyabot debounces a 400 ms availability check against GET /api/v1/auth/email-available?email=…. If the address is already verified you'll see an error; if it exists but isn't verified yet, you can re-sign up to re-trigger the OTP.

Step 2 — Account details. Provide:

  • First name / last name — 2–50 characters each.
  • Username — 3–30 characters, [A-Za-z0-9._-] only. The username can't begin or end with . _ -, and can't contain two of those characters in a row. A live availability check (GET /api/v1/auth/username-available?username=…) confirms it's free.
  • Phone — international E.164 format (validated by libphonenumber-js).
  • Password — 8–64 characters, must contain at least one uppercase letter, one lowercase letter, and one digit. A strength meter surfaces five tiers (veryWeakstrong).
  • Confirm password — must match.

Submitting calls POST /api/v1/auth/signup. On success you're routed to the OTP page.

OAuth instead

If your admin enabled them, Continue with Google and Continue with GitHub buttons appear on the email step. They redirect to ${API_URL}/auth/oauth/google or /auth/oauth/github and skip the OTP flow on first sign-in.

2. Verify your email

Sosyabot emails a 6-digit OTP to the address you registered. The default TTL is 5 minutes and the default attempts cap is 3, both configurable per workspace.

Enter the code on /auth/otp and submit POST /api/v1/auth/verify. On success the backend:

  1. Marks your account isVerified = true.
  2. Creates a default workspace (currency TRY, locale tr, FREE plan with a 3-day trial) — but only if you don't already belong to one.
  3. Issues a JWT in an httpOnly, secure, sameSite=strict cookie named token.
  4. Redirects you to /app (or to a pending invitation if one is attached).

OTP expired

If the code TTL elapses, click Resend on the OTP page. The endpoint is rate-limited (otpLimiter: 20 requests / 15 min) so resending repeatedly will eventually be blocked.

3. Run the onboarding wizard

The first time you land on /app after verification, Sosyabot redirects you to /app/onboarding — a five-step wizard. The full walkthrough is at Onboarding; the short version:

  1. Welcome — meet the product.
  2. Connect your first channel — at least one account is required to leave the wizard normally. The button hops you to Connections, where you complete an OAuth round-trip and bounce back.
  3. AI overview — informational, no input.
  4. Write your first post — paste a caption, choose Post now or Save as draft, and the wizard issues POST /api/v1/posts with accounts: [firstChannelId], category: "profile", type: "text".
  5. Done — clicks Go to dashboard which calls PATCH /api/v1/users/me/onboarding { completed: true } and finally lands you in /app.

4. Schedule and watch

You're now inside the Dashboard. The widgets cover scheduled queue, recent activity, and engagement trend. Open Publishing to compose more posts, or Connections to add more channels.

Troubleshooting