Allmine API
Authentication

Email doğrulama kodu ile giriş yap

**Production uyarisi:** Bu endpoint veri degistirir veya operasyon tetikleyebilir. API Playground icinde Production server seciliyse gercek production verisi etkilenir; test icin Development server kullanin. Email doğrulama kodunu kontrol eder ve JWT token döner. Yeni kullanıcılar için kayıt tamamlanması gerekir.

POST
/api/v1/auth/verify-otp-email

Production uyarisi: Bu endpoint veri degistirir veya operasyon tetikleyebilir. API Playground icinde Production server seciliyse gercek production verisi etkilenir; test icin Development server kullanin.

Email doğrulama kodunu kontrol eder ve JWT token döner. Yeni kullanıcılar için kayıt tamamlanması gerekir.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/v1/auth/verify-otp-email" \  -H "Content-Type: application/json" \  -d '{    "email": "[email protected]",    "code": "1234"  }'
{
  "isSuccess": true,
  "statusCode": 200,
  "data": {
    "accessToken": "sample",
    "refreshToken": "sample",
    "expiresIn": 3600,
    "refreshExpiresIn": 2592000,
    "user": {
      "name": "John",
      "surname": "Doe",
      "username": "johndoe123",
      "countryCode": "90",
      "phoneNumber": "5372505890",
      "signupSource": "instagram_ads",
      "signupCampaign": "spring_launch_2026",
      "profilePhoto": "sample.jpg",
      "availabilityStatus": "available",
      "birthDate": "2026-01-15T10:30:00.000Z",
      "gender": "male",
      "interests": [
        "music"
      ],
      "expertise": "designer",
      "email": "[email protected]",
      "bio": "Passionate about technology and travel",
      "instagram": "myinstagram",
      "x": "mytwitterx",
      "tiktok": "mytiktok",
      "snapchat": "mysnapchat",
      "facebook": "myfacebook",
      "privacyPolicyAccepted": true,
      "privacyPolicyVersion": "1.2.0",
      "termsOfUseAccepted": true,
      "termsOfUseVersion": "1.1.0",
      "consentFormAccepted": true,
      "consentFormVersion": "1.0.0",
      "isRegistrationComplete": false,
      "roles": [
        "user"
      ],
      "followersCount": 128,
      "followingCount": 256,
      "minutePriceInLiveStream": 1,
      "creditBalance": 500,
      "lastLogin": "2026-01-15T10:30:00.000Z",
      "timezone": "Europe/Istanbul",
      "lastUsernameChangeDate": "2026-01-15T10:30:00.000Z",
      "accountDeletionStatus": "pending",
      "accountDeletionRequestedAt": "2026-01-15T10:30:00.000Z",
      "accountDeletionScheduledFor": "2026-01-15T10:30:00.000Z",
      "accountDeletionCancelledAt": "2026-01-15T10:30:00.000Z",
      "accountDeletionFinalizedAt": "2026-01-15T10:30:00.000Z"
    },
    "isRegistrationComplete": true
  },
  "errors": [],
  "timestamp": "2026-05-22T16:11:27.126Z"
}
{
  "isSuccess": false,
  "statusCode": 400,
  "data": null,
  "errors": [
    "Validation failed"
  ],
  "timestamp": "2026-01-15T10:30:00.000Z"
}
{
  "isSuccess": false,
  "statusCode": 404,
  "data": null,
  "errors": [
    "Resource not found"
  ],
  "timestamp": "2026-01-15T10:30:00.000Z"
}
{
  "isSuccess": false,
  "statusCode": 409,
  "data": null,
  "errors": [
    "Resource already exists or cannot be changed in its current state"
  ],
  "timestamp": "2026-01-15T10:30:00.000Z"
}