ข้ามไปยังเนื้อหาหลัก
s.id Logo
แพลตฟอร์มนักพัฒนา

API Reference

ดูทุกการดำเนินการ REST และ OAuth พร้อมโฮสต์ วิธีการยืนยันตัวตน สโคป พารามิเตอร์ ฟิลด์คำขอ และรหัสตอบกลับที่ถูกต้อง

OpenAPI v2.1.0

ภาพรวม API

การดำเนินการสาธารณะของ /v2 รองรับคีย์ API ที่กำหนดสโคปหรือโทเค็นการเข้าถึง OAuth 2.0 ส่วนการจัดการ OAuth มีข้อกำหนดด้านเบราว์เซอร์ เซสชัน หรือข้อมูลรับรองไคลเอนต์ของตนเอง

ลอง Interactive Reference
URL พื้นฐาน:
https://api.s.id/v2
การดำเนินการ
38
สโคป
10

การรับรองความถูกต้อง

ข้อมูลรับรองมีการกำหนดสโคป หากขาดสโคปที่จำเป็น ระบบจะส่งคืน 403 insufficient_scope ขอเฉพาะสิทธิ์ที่การเชื่อมต่อของคุณต้องใช้

Authorization: Bearer sk_live_...

Endpoints

แค็ตตาล็อก endpoint

ขยายการดำเนินการเพื่อดู URL ฐาน การยืนยันตัวตน อินพุต และรหัสตอบกลับที่เป็นไปได้อย่างถูกต้อง

Links

POST/links/availableตรวจสอบว่า slug ใช้งานได้หรือไม่

Checks whether a custom slug is available before creating a link.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

links:read

เนื้อหาคำขอ

  • shortstringจำเป็น
  • domain_aliasstring

    Custom domain, if any

การตอบกลับ

200Slug is available
401
422Slug is taken or invalid
GET/links/{short}/statsไทม์ไลน์การคลิกลิงก์

Returns a date-bucketed click-count timeline for the link.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

links:analytics

พารามิเตอร์

  • shortpath · stringจำเป็น
  • startquery · string
  • endquery · string

การตอบกลับ

200Click timeline
401
403
404
429
GET/links/{short}/stats/lifetimeจำนวนคลิกตลอดอายุการใช้งาน

Returns the all-time total click count for a single link.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

links:analytics

พารามิเตอร์

  • shortpath · stringจำเป็น

การตอบกลับ

200Lifetime click count
401
403
404
429

User

GET/userรับผู้ใช้ที่ยืนยันตัวตนแล้ว
URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

user:read

การตอบกลับ

200User profile
401
429
GET/quotaรับโควตาบัญชี

Returns the authenticated user's current plan limits and usage counters.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

user:read

การตอบกลับ

200Account quota
401
429

Microsites

GET/micrositesแสดงรายการ microsite

Returns a paginated list of microsites owned by the authenticated user.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:read

พารามิเตอร์

  • limitquery · integer
  • afterquery · string

    Cursor for the next page (opaque string from previous response)

การตอบกลับ

200List of microsites
401
403
POST/micrositesสร้าง microsite
URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:write

เนื้อหาคำขอ

  • slugstringจำเป็น

    URL-safe identifier (alphanumeric + hyphens/underscores)

  • titlestringจำเป็น
  • kindstringจำเป็น

    Microsite category (e.g. `personal_branding`, `brand`, `other`)

  • themestring

    Theme slug (optional, defaults to the platform default)

การตอบกลับ

200Microsite created
400Validation error (slug already taken, quota exceeded, etc.)
401
403
GET/microsites/{slug}รับ microsite
URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:read

พารามิเตอร์

  • slugpath · stringจำเป็น

การตอบกลับ

200Microsite detail
401
403
404Microsite not found
PUT/microsites/{slug}อัปเดต microsite

Patches title, description, and/or visibility. All fields are optional.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:write

พารามิเตอร์

  • slugpath · stringจำเป็น

เนื้อหาคำขอ

  • titlestring
  • descriptionstring
  • hideboolean

    Set `true` to hide the microsite from public (requires plan that supports visibility toggle)

การตอบกลับ

200Updated microsite
401
403
404Microsite not found
DELETE/microsites/{slug}ลบ microsite
URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:delete

พารามิเตอร์

  • slugpath · stringจำเป็น

การตอบกลับ

200Microsite deleted
401
403
404Microsite not found
POST/microsites/availableตรวจสอบว่า slug ของ microsite ใช้งานได้หรือไม่

Checks whether a microsite slug is available before creating a microsite.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:read

เนื้อหาคำขอ

  • slugstringจำเป็น

การตอบกลับ

200Slug availability result
401
403
429
GET/microsites/{slug}/componentsแสดงคอมโพเนนต์ microsite

Returns the components belonging to a microsite, in display order.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:read

พารามิเตอร์

  • slugpath · stringจำเป็น

    The slug of the microsite

การตอบกลับ

200List of microsite components
401
403
404
429
POST/microsites/{slug}/componentsเพิ่มคอมโพเนนต์ microsite

Adds a new component to a microsite. The body is `{ kind, data, tag? }`. The shape of the `data` object depends on `kind`. Unknown fields are ignored, validation is per-kind, and invalid input returns `422`. All color fields are hex strings (e.g. `#1a56db`). **Kinds:** `PROFILE`, `LINK`, `HORIZONTAL_LINK`, `TEXT`, `IMAGE`, `MEDIA`, `DIVIDER`, `COUNTDOWN`, `MAPS`, `IMAGE_SLIDE`, `CV`, `AUTOPLAY_MUSIC`, `CONTACT`, `CALENDAR`, `SHOP_LISTING`, `SHOP_ITEM`, `SHOP_LEADERBOARD`. **Rules:** - `PROFILE`, `CV` and `AUTOPLAY_MUSIC` are unique — at most one per microsite. - `IMAGE_SLIDE` requires a plan with the Image Slide feature. - On create the password is always stored empty — set or change it via update (`PUT`). - Image fields (`image`, `imageBackground`, slide `image`) must be a local asset path, not a remote URL — they must match `[/.a-zA-Z0-9_-]+.(jpg|jpeg|png|svg|webp|gif|bmp)`; any value containing a scheme (`https://`), `//`, or `..` is rejected. **Shared field groups** (a kind that lists a group accepts all of its fields inside `data`): - **Button styling** (`LINK`, `CONTACT`, `CALENDAR`): `icon` (string, max 255), `textFont` (string, max 100), `textPosition` (string, max 100), `buttonEffect` (string, max 100), `buttonColor` (hex, max 20), `buttonBorderColor` (hex, max 20), `buttonIconBackground` (hex, max 20), `buttonShadowColor` (hex, max 20). - **Spoiler reveal** (`TEXT`, `IMAGE`, `MEDIA`, `MAPS`, `IMAGE_SLIDE`, `SHOP_LEADERBOARD`): `isSpoiler` (bool), `spoilerButtonText` (string, max 140), `spoilerButtonTextPosition` (string, max 100), `spoilerButtonIcon` (string), `spoilerButtonColor` (hex, max 20), `spoilerButtonFont` (string, max 100), `spoilerBackground` (string, max 100), `spoilerBackgroundOpacity` (string, max 100), `spoilerButtonBorderColor` (hex, max 20), `spoilerButtonIconBackground` (hex, max 20), `spoilerButtonShadowColor` (hex, max 20). - **Password protection** (`LINK`, `TEXT`, `IMAGE`, `MEDIA`, `MAPS`, `IMAGE_SLIDE`, `CONTACT`, `CV`, `SHOP_LEADERBOARD`): `passwordActive` (bool), `password` (string, max 255 — set via update only), `passwordMessage` (string, max 255).

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:write

พารามิเตอร์

  • slugpath · stringจำเป็น

    The slug of the microsite

เนื้อหาคำขอ

  • kindstringจำเป็น

    Component kind. The shape of `data` depends on this value.

  • dataobjectจำเป็น

    Kind-specific component data. Its shape depends on `kind`. See the operation description and examples below.

  • tagstring

    Optional grouping tag

การตอบกลับ

200Component created
401
403
404
422
429
PUT/microsites/{slug}/components/{componentId}อัปเดตคอมโพเนนต์ microsite

Updates a single microsite component.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:write

พารามิเตอร์

  • slugpath · stringจำเป็น

    The slug of the microsite

  • componentIdpath · stringจำเป็น

    The component ID

เนื้อหาคำขอ

  • activebooleanจำเป็น

    Whether the component is shown

  • kindstringจำเป็น

    Component kind (e.g. `LINK`, `PROFILE`, `TEXT`)

  • dataobjectจำเป็น

    Kind-specific component data

การตอบกลับ

200Component updated
401
403
404
422
429
DELETE/microsites/{slug}/components/{componentId}ลบคอมโพเนนต์ microsite

Deletes a single microsite component.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:delete

พารามิเตอร์

  • slugpath · stringจำเป็น

    The slug of the microsite

  • componentIdpath · stringจำเป็น

    The component ID

การตอบกลับ

200Component deleted
401
403
404
429
POST/microsites/{slug}/components/orderจัดลำดับคอมโพเนนต์ microsite ใหม่

Reorders a microsite's components according to the provided list of component IDs.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

microsites:write

พารามิเตอร์

  • slugpath · stringจำเป็น

    The slug of the microsite

เนื้อหาคำขอ

  • ordersarray<string>จำเป็น

    Component IDs in the desired display order

การตอบกลับ

200Components reordered
401
403
404
422
429

Analytics

GET/statsข้อมูลวิเคราะห์การคลิกระดับบัญชี

Returns a timeline of clicks plus breakdowns by top links, referers, locations, devices, and browsers for the authenticated account. Date range is gated by subscription plan.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

links:analytics

พารามิเตอร์

  • startquery · string

    Start date (YYYY-MM-DD). Defaults to 30 days ago.

  • endquery · string

    End date (YYYY-MM-DD). Defaults to today.

  • additionalquery · boolean

    Include referer, location, device, browser breakdowns

การตอบกลับ

200Account analytics
401
403

QR

GET/qrรับการตั้งค่า QR ส่วนกลาง

Returns the account-level (global) QR code settings applied to QR codes by default.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

qr:read

การตอบกลับ

200Global QR settings
401
403
429
PUT/qrปรับแต่งการตั้งค่า QR ส่วนกลาง

Updates the account-level (global) QR code settings. All fields are optional; omitted fields are left unchanged.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

qr:write

เนื้อหาคำขอ

  • logostring

    URL of the logo image embedded in the QR code

  • colorstring

    Foreground color as a hex value, e.g. #1a56db

การตอบกลับ

200Updated global QR settings
401
403
422
429
GET/links/{short}/qrรับการตั้งค่า QR ของลิงก์

Returns the QR code settings for a single link.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

qr:read

พารามิเตอร์

  • shortpath · stringจำเป็น

    The short code of the link

การตอบกลับ

200Link QR settings
401
403
404
429
PUT/links/{short}/qrปรับแต่งการตั้งค่า QR ของลิงก์

Updates the QR code settings for a single link. All fields are optional; omitted fields are left unchanged.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API หรือ OAuth 2.0

สิทธิ์

qr:write

พารามิเตอร์

  • shortpath · stringจำเป็น

    The short code of the link

เนื้อหาคำขอ

  • logostring

    URL of the logo image embedded in the QR code

  • colorstring

    Foreground color as a hex value, e.g. #1a56db

การตอบกลับ

200Updated link QR settings
401
403
404
422
429

OAuth 2.0

GET/oauth/authorizeรับข้อมูลหน้าจอขอความยินยอม

A plain browser navigation here (no `Accept: application/json`) 302-redirects to the dash.s.id consent UI, preserving the query string. With `Accept: application/json`, returns application name, logo, and requested scopes for the consent UI to render.

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

พารามิเตอร์

  • client_idquery · stringจำเป็น
  • redirect_uriquery · stringจำเป็น
  • response_typequery · stringจำเป็น
  • scopequery · string
  • statequery · string

    Recommended. Opaque value for CSRF protection. Returned unchanged in the redirect.

การตอบกลับ

200Consent screen data
400Bad request
POST/oauth/tokenแลกรหัสหรือรีเฟรชโทเค็น
URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

เนื้อหาคำขอ

  • grant_typestring
  • codestring
  • redirect_uristring
  • client_idstring
  • client_secretstring
  • refresh_tokenstring

การตอบกลับ

200Token response
400Invalid grant, unsupported_grant_type, or invalid_client
401Invalid client credentials
POST/oauth/revokeเพิกถอนโทเค็น

Revokes an access or refresh token. Always returns 200 OK regardless of whether the token was valid (RFC 7009).

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

เนื้อหาคำขอ

  • tokenstringจำเป็น

การตอบกลับ

200Token revoked
POST/oauth/introspectตรวจสอบโทเค็น

Reports whether a token is currently active and, if so, which scopes and client it belongs to (RFC 7662). Client-credential protected: `client_id`/`client_secret` identify the caller, not the token owner. Always returns `200` — including for an unknown, expired, or revoked token (`{"active": false}`) — to avoid leaking token validity to unauthenticated probing.

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

เนื้อหาคำขอ

  • tokenstringจำเป็น
  • client_idstringจำเป็น
  • client_secretstringจำเป็น

การตอบกลับ

200Introspection result
400Missing token/client_id, or invalid client credentials
GET/oauth/userinfoรับโปรไฟล์ผู้ใช้ที่ได้รับอนุญาต

Returns the profile of the user who authorized the OAuth app. Requires `Authorization: Bearer <access_token>` (the OAuth access token, not an sk_live_ key).

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
OAuth 2.0

สิทธิ์

user:read

การตอบกลับ

200User profile
401Unauthorized
GET/.well-known/oauth-authorization-serverข้อมูลเมตาของเซิร์ฟเวอร์อนุญาต OAuth 2.0

RFC 8414 discovery document advertising every OAuth endpoint URL, supported scopes, and PKCE methods, so standards-compliant client libraries can configure themselves instead of hard-coding s.id's URLs.

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

การตอบกลับ

200Authorization server metadata
GET/api/user/oauth/appsแสดงแอปที่ผู้ใช้ปัจจุบันอนุญาต

Returns all OAuth clients that have active tokens for the authenticated user. Auth: user session cookie (not API key).

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

การตอบกลับ

200List of connected apps
401Unauthorized
DELETE/api/user/oauth/apps/{clientId}เพิกถอนโทเค็นทั้งหมดของแอป

Revokes all active tokens granted by the current user to the specified OAuth client.

URL พื้นฐาน
https://api.s.id
การรับรองความถูกต้อง
คีย์ API

พารามิเตอร์

  • clientIdpath · stringจำเป็น

การตอบกลับ

200App access revoked
401Unauthorized
404App not found

Integrations

POST/integrations/make/webhook/subscribeสมัครรับ Make.com webhook

Registers a Make.com (Integromat) scenario webhook URL to receive s.id events. Authenticated via DeveloperAPIAuth (API key or OAuth Bearer) with no scope requirement — every authenticated developer credential can subscribe.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API

การตอบกลับ

200Subscribed
401Unauthorized
POST/integrations/make/webhook/unsubscribeยกเลิกการรับ Make.com webhook

Removes a previously registered Make.com scenario webhook subscription. Authenticated via DeveloperAPIAuth with no scope requirement.

URL พื้นฐาน
https://api.s.id/v2
การรับรองความถูกต้อง
คีย์ API

การตอบกลับ

200Unsubscribed
401Unauthorized

Scope Reference

links:read

แสดงและอ่านลิงก์

links:write

สร้างและอัปเดตลิงก์ (สร้าง แก้ไข กู้คืน)

links:archive

เก็บลิงก์เข้าคลัง

links:analytics

อ่านสถิติการคลิกและจำนวนคลิกตลอดอายุการใช้งานของแต่ละลิงก์

qr:read

อ่านการตั้งค่าคิวอาร์โค้ด (ส่วนกลางและรายลิงก์)

qr:write

ปรับแต่งการตั้งค่าคิวอาร์โค้ด (ส่วนกลางและรายลิงก์)

user:read

อ่านโปรไฟล์ผู้ใช้ที่ยืนยันตัวตนแล้วและโควตาบัญชี

microsites:read

อ่าน microsite

microsites:write

สร้าง อัปเดต และจัดการคอมโพเนนต์ของ microsite

microsites:delete

ลบ microsite และคอมโพเนนต์

Rate Limits

ขีดจำกัดเริ่มต้นคือ 38 คำขอต่อนาทีต่อข้อมูลรับรอง—ต่อคีย์ API หรือโทเค็นการเข้าถึง OAuth หนึ่งรายการ แอป OAuth ยังมีเพดานรวม 500 คำขอต่อนาทีสำหรับโทเค็นทั้งหมด

การตอบกลับข้อผิดพลาดทั่วไป

400
คำขอมีรูปแบบไม่ถูกต้องหรือไม่รองรับ
401
ไม่มีข้อมูลรับรอง ข้อมูลไม่ถูกต้อง ถูกเพิกถอน หรือหมดอายุ
403
ข้อมูลรับรองไม่มีสโคปที่จำเป็น
404
ไม่พบทรัพยากรที่ร้องขอ
422
การตรวจสอบคำขอล้มเหลว
429
เกินขีดจำกัดอัตราการเรียกใช้

พร้อมเริ่มสร้างแล้วหรือยัง?

สร้าง API key ในไม่กี่นาที มีแพ็กเกจฟรี, ไม่ต้องใช้บัตรเครดิต

รับ API key ของคุณ