Skip to content
API дар марҳилаи beta аст ва бидуни огоҳии пешакӣ тағйир ёфта метавонад.

Лоиҳаҳо

Лоиҳаҳо ба шумо имконият медиҳанд OAuth clients-ро ташкил диҳед, аъзоёни дастаро идора кунед ва дастрасиро назорат кунед — ҳама дар доираи як барнома ё хидмат.

Шарҳи умумӣ

Лоиҳа контейнер аст барои:

  • OAuth clients — ҳар лоиҳа метавонад OAuth clients-и худро дошта бошад
  • Аъзоёни даста — бо нақшҳо (owner, admin, member)
  • Иҷозатҳои фардӣ — назорати нозуки дастрасӣ
  • Даъватномаҳо — ҳамкоронро тавассути email даъват кунед

Намудҳои лоиҳа

НамудТавсифПайвастан
PublicБа ҳамаи корбарон намоёнҲар кас метавонад пайвандад
PrivateТанҳо ба аъзоён намоёнТанҳо бо даъватнома

Нақшҳо

НақшИдораи аъзоёнИдораи танзимотИдораи clientsНест кардани лоиҳа
OwnerҲаҲаҲаҲа
AdminҲаҲаҲаНе
MemberНеНеНеНе

Ҳар лоиҳа дақиқан як owner дорад. Моликиятро ба аъзои дигар интиқол додан мумкин аст.

Сохтани лоиҳа

bash
curl -X POST https://api.hitkey.io/projects/ \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My App",
    "description": "My awesome application",
    "is_public": true
  }'

slug аз ном худкор сохта мешавад ва дастӣ муайян карда намешавад.

OAuth Clients дар доираи лоиҳа

Ҳар лоиҳа метавонад OAuth clients-и худро дошта бошад. Вақте ки корбар тавассути client-и дар доираи лоиҳа авторизатсия мекунад, scope-и project:read дастрасиро ба маълумоти узвияти ӯ дар он лоиҳа медиҳад.

bash
# Create an OAuth client for a project
curl -X POST https://api.hitkey.io/projects/my-app/clients \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My App OAuth",
    "redirect_uri": "https://myapp.com/callback"
  }'

Идоракунии даста

Илова кардани аъзо

bash
curl -X POST https://api.hitkey.io/projects/my-app/members \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "user@example.com",
    "role": "member",
    "permissions": ["can_deploy"]
  }'

Аъзоён тавассути суроғаи email илова мешаванд. Шумо инчунин метавонед ҳамзамон иҷозатҳо таъин кунед.

Навсозии нақши аъзо

bash
curl -X PATCH https://api.hitkey.io/projects/my-app/members/MEMBER_ID \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "role": "admin"
  }'

Интиқоли моликият

bash
curl -X POST https://api.hitkey.io/projects/my-app/transfer-ownership \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "new_owner_id": "new-owner-uuid"
  }'

Иҷозатҳои фардӣ

Лоиҳаҳо иҷозатҳои фардиро дастгирӣ мекунанд, ки ба аъзоён таъин карда мешаванд:

bash
# Create a permission
curl -X POST https://api.hitkey.io/projects/my-app/permissions \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "key": "can_deploy",
    "display_name": "Can Deploy",
    "description": "Allow deployment",
    "is_default": false
  }'
МайдонНамудҲатмӣТавсиф
keystringҲаИдентификатори ягонаи иҷозат
display_namestringҲаНоми хоношаванда барои одам
descriptionstringНеТавсифи иҷозат
is_defaultbooleanНеБа аъзоёни нав пешфарз таъин мешавад

Даъватномаҳо

Корбаронро тавассути email ба лоиҳаи худ даъват кунед:

bash
curl -X POST https://api.hitkey.io/projects/my-app/invites \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "colleague@example.com",
    "role": "member",
    "redirect_url": "https://myapp.com/welcome"
  }'

INFO

Мӯҳлати даъватномаҳо пас аз 7 рӯз ба охир мерасад. redirect_url-и ихтиёрӣ дар ҷавоби қабул дохил карда мешавад, то client корбарро пас аз қабул равона кунад.

Корбари даъватшуда email бо истинод мегирад. Ӯ метавонад қабул кунад тавассути:

  1. Зер кардани истинод (тасдиқи ҳувият лозим аст)
  2. Даъвати POST /invites/:token/accept

Барои тафсилот API-и даъватномаҳо-ро бубинед.

HitKey Service License.