Organizasyon API

Organizasyon modülünün tüm işlemleri (17) ve veri modelleri (1): adresler, izinler, girdiler, ön koşullar, olaylar ve örnekler.

İşletmeniz, çalışma alanları, markanız ve ekibiniz.

Modül kodu organizations · 17 işlem · 1 veri modeli · 19 olay. Bir anahtar ya da token, arkasındaki kişinin bu modülde yapabildiğinden fazlasını asla yapamaz; satır düzeyindeki güvenlik uygulamadakiyle birebir aynıdır. Yetki kapsamları: organizations (hepsi), organizations:read (yalnız okuma) ya da organizations:<yetenek>.

Kaynaklar

KaynakTabloListeleme ve okumaPOSTPATCHDELETE
employeesemployee/api/v1/employees

Listeler limit (en çok 200), cursor, order (ör. -created_at), fields ve q alır; diğer her sorgu parametresi bir sütun süzgecidir: ?status=paid, ?total[gte]=100, ?id[in]=a,b, ?x=null.

İşlemler

İşlemGereken izinNe yapar
organizations.create_workspaceorganizations:manageÇalışma alanı oluştur
organizations.delete_workspaceorganizations:manageÇalışma alanını sil
organizations.invite_memberorganizations:manageÜye davet et
organizations.remove_memberorganizations:manageÜyeyi çıkar
organizations.reorder_employeesorganizations:manageEkibi yeniden sırala
organizations.resend_inviteorganizations:manageDaveti yeniden gönder
organizations.revoke_inviteorganizations:manageDaveti geri al
organizations.save_first_runorganizations:manageİlk kurulum ilerlemesini kaydet
organizations.save_onboarding_progressorganizations:manageKurulum ilerlemesini kaydet
organizations.set_employee_visibleorganizations:managePersonel profilini göster veya gizle
organizations.set_era_preferencesorganizations:readEra tercihlerini seç
organizations.set_interface_languageorganizations:readArayüz dilini seç
organizations.set_member_statusorganizations:manageÜyeyi askıya al veya geri al
organizations.transfer_ownershiporganizations:manageSahipliği devret
organizations.updateorganizations:manageOrganizasyonu güncelle
organizations.update_employee_profileorganizations:writePersonel profilini düzenle
organizations.update_workspaceorganizations:manageÇalışma alanını güncelle

organizations.create_workspace

Çalışma alanı oluştur — Bu organizasyonda altı sistem rolüyle yeni bir çalışma alanı açar.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.create_workspace
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
namestringevetAd · en çok 120
slugstringevetURL adı · Küçük harf, rakam ve kısa çizgi. Bağlantılarda kullanılır. · en çok 40

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
slug_formatURL adı bir harfle başlamalı ve yalnızca küçük harf, rakam ve tire içermeli.
slug_takenBu organizasyondaki başka bir çalışma alanı bu URL adını zaten kullanıyor.

Yayımladığı olaylar: organizations.workspace_created

Neye yazar: workspace (insert) — Creates the workspace, its six system roles and its first member

curl -X POST https://app.getera.io/api/v1/actions/organizations.create_workspace \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"name":"Name","slug":"URL name"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.workspace_created"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.create_workspace", {
  name: "Name",
  slug: "URL name"
})
era organizations create_workspace \
  --name "Name" \
  --slug "URL name"
tools/call
{
  "name": "era__organizations__create_workspace",
  "arguments": {
    "name": "Name",
    "slug": "URL name"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 slug_format, slug_taken · 429 çok sık istek

organizations.delete_workspace

Çalışma alanını sil — Çalışma alanını ve içindeki her şeyi siler.

Gereken izin organizations:manage · siler ya da geri alınamaz · Era çalıştırırken bir kişiye onaylatır

POSThttps://app.getera.io/api/v1/actions/organizations.delete_workspace
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
workspace_iduuidevetÇalışma alanı

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
last_workspace_protectedBir organizasyonun en az bir çalışma alanı olmalı.

Yayımladığı olaylar: organizations.workspace_deleted

Neye yazar: workspace (delete) — Deletes the workspace and cascades to its data

curl -X POST https://app.getera.io/api/v1/actions/organizations.delete_workspace \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"workspace_id":"WORKSPACE_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.workspace_deleted"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.delete_workspace", {
  workspace_id: "WORKSPACE_ID"
})
era organizations delete_workspace \
  --workspace-id "WORKSPACE_ID"
tools/call
{
  "name": "era__organizations__delete_workspace",
  "arguments": {
    "workspace_id": "WORKSPACE_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 last_workspace_protected · 429 çok sık istek

organizations.invite_member

Üye davet et — Henüz hesabı olması gerekmeyen bir adrese davet gönderir.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.invite_member
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
emailemailevetE-posta
org_rolestring (enum)evetOrganizasyon rolü · Faturalandırmayı ve üyeliği belirler. Nelere erişebileceğini çalışma alanı rolü belirler. · İzin verilen değerler: member, admin, owner
role_iduuidevetÇalışma alanı rolü · kimliği: role
expires_in_daysnumberGeçerlilik süresi · en az 1 · en çok 30

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
already_memberBu adres zaten bu organizasyona ait.
invite_openBu adres için bekleyen bir davet zaten var.
role_not_in_workspaceBu rol başka bir çalışma alanına ait.
seat_limit_reachedOrganizasyonun planında boş bir kullanıcı yeri olmalı.

Yayımladığı olaylar: organizations.member_invited

Neye yazar: invitation (insert) — Creates the invitation and its single-use token

curl -X POST https://app.getera.io/api/v1/actions/organizations.invite_member \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"email":"[email protected]","org_role":"member","role_id":"ROLE_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.member_invited"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.invite_member", {
  email: "[email protected]",
  org_role: "member",
  role_id: "ROLE_ID"
})
era organizations invite_member \
  --email "[email protected]" \
  --org-role "member" \
  --role-id "ROLE_ID"
tools/call
{
  "name": "era__organizations__invite_member",
  "arguments": {
    "email": "[email protected]",
    "org_role": "member",
    "role_id": "ROLE_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 already_member, invite_open, role_not_in_workspace, seat_limit_reached · 429 çok sık istek

organizations.remove_member

Üyeyi çıkar — Birini organizasyondan çıkarır ve işlerini başka birine devreder.

Gereken izin organizations:manage · siler ya da geri alınamaz · Era çalıştırırken bir kişiye onaylatır

POSThttps://app.getera.io/api/v1/actions/organizations.remove_member
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
user_iduuidevetÜye
reassign_touuidİşlerini devret: · Hâlâ sahibi olduğu kayıtlar varsa gerekir. Hiçbir kayıt atanmamış kalamaz. · kimliği: app_user

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
cannot_remove_selfKendinizi çıkaramazsınız. Başka bir sahipten isteyin.
not_a_memberBu kişi bu organizasyonun üyesi değil.
last_owner_protectedBir organizasyonun en az bir aktif sahibi olmalı.
transfer_target_invalidİşleri yalnızca başka bir aktif üyeye devredilebilir.

Yayımladığı olaylar: organizations.member_removed, organizations.member_offboarded

Neye yazar: membership (delete) — Removes them from the organization and from every workspace in it; hands on or switches off what they own

curl -X POST https://app.getera.io/api/v1/actions/organizations.remove_member \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"user_id":"USER_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.member_removed",
    "organizations.member_offboarded"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.remove_member", {
  user_id: "USER_ID"
})
era organizations remove_member \
  --user-id "USER_ID"
tools/call
{
  "name": "era__organizations__remove_member",
  "arguments": {
    "user_id": "USER_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 cannot_remove_self, not_a_member, last_owner_protected, transfer_target_invalid · 429 çok sık istek

organizations.reorder_employees

Ekibi yeniden sırala — Personelin herkese açık ekip sayfasındaki sırasını belirler.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/employees/actions/reorder_employees
API anahtarı ya da OAuth token · organizations:manage
  • Asıl adres: POST /api/v1/actions/organizations.reorder_employees

Girdi

AlanTürZorunluAçıklama
orderobject / arrayevetSipariş · Üye kimlikleri, ilkinden sonuncusuna.

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
unknown_memberHer kimlik burada personel profili olan birine ait olmalı.
duplicate_positionAynı kişi bir sıralamada iki kez yer alamaz.

Yayımladığı olaylar: organizations.profile_updated

Neye yazar: employee (update) — Rewrites sort_order for the listed profiles

curl -X POST https://app.getera.io/api/v1/employees/actions/reorder_employees \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"order":{}}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.profile_updated"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.employees.reorderEmployees({
  order: {}
})
era employees reorder_employees --data '{"order":{}}'
tools/call
{
  "name": "era__organizations__reorder_employees",
  "arguments": {
    "order": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 unknown_member, duplicate_position · 429 çok sık istek

organizations.resend_invite

Daveti yeniden gönder — Bekleyen davet için yeni bir bağlantı üretir ve süresini baştan başlatır. Eski bağlantı çalışmaz olur.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.resend_invite
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
invitation_iduuidevetDavetiye
expires_in_daysnumberGeçerlilik süresi · en az 1 · en çok 30

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
invite_not_foundDavet bu organizasyonda bulunmalı.
already_acceptedBu davet zaten kabul edilmiş.
invite_revokedGeri alınmış bir davet yeniden gönderilmez; bunun yerine yeniden davet edin.

Yayımladığı olaylar: organizations.invite_resent

Neye yazar: invitation (update) — Replaces the token and restarts the expiry

curl -X POST https://app.getera.io/api/v1/actions/organizations.resend_invite \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"invitation_id":"INVITATION_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.invite_resent"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.resend_invite", {
  invitation_id: "INVITATION_ID"
})
era organizations resend_invite \
  --invitation-id "INVITATION_ID"
tools/call
{
  "name": "era__organizations__resend_invite",
  "arguments": {
    "invitation_id": "INVITATION_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 invite_not_found, already_accepted, invite_revoked · 429 çok sık istek

organizations.revoke_invite

Daveti geri al — Kabul edilmemiş bir daveti geri çeker.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.revoke_invite
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
invitation_iduuidevetDavetiye

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
already_acceptedBu davet zaten kabul edilmiş.

Yayımladığı olaylar: organizations.invite_revoked

Neye yazar: invitation (update) — Marks the invitation revoked

curl -X POST https://app.getera.io/api/v1/actions/organizations.revoke_invite \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"invitation_id":"INVITATION_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.invite_revoked"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.revoke_invite", {
  invitation_id: "INVITATION_ID"
})
era organizations revoke_invite \
  --invitation-id "INVITATION_ID"
tools/call
{
  "name": "era__organizations__revoke_invite",
  "arguments": {
    "invitation_id": "INVITATION_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 already_accepted · 429 çok sık istek

organizations.save_first_run

İlk kurulum ilerlemesini kaydet — Era’nın ilk kurulumunda hangi adımların sonraya bırakıldığını ya da bittiğini saklar; aynı ilerleme web’de, bilgisayarda ve telefonda görünür.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.save_first_run
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
skipobject / arrayErtelenen aşamalar
unskipobject / arrayYeniden açılan aşamalar
setobject / arrayDeğerler · { eraChatId }
finishedbooleanBitti
hoststringSunucu · en çok 20

Yayımladığı olaylar: organizations.first_run_saved

Neye yazar: org_onboarding (update) — Saves the first-run journey beside the setup draft

curl -X POST https://app.getera.io/api/v1/actions/organizations.save_first_run \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"skip":{}}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.first_run_saved"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.save_first_run", {
  skip: {}
})
era organizations save_first_run --data '{"skip":{}}'
tools/call
{
  "name": "era__organizations__save_first_run",
  "arguments": {
    "skip": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 429 çok sık istek

organizations.save_onboarding_progress

Kurulum ilerlemesini kaydet — Kurulumun her cihazda kaldığı yerden sürmesi için açık ekranı ve verilen yanıtları saklar.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.save_onboarding_progress
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
stepstringevetAdım · en çok 40
codestringİşletme hazır kurulumu · en çok 80
choicesobject / arrayYanıtlar
donebooleanTamamlandı

Yayımladığı olaylar: organizations.onboarding_progress_saved

Neye yazar: org_onboarding (update) — Saves or completes the organization setup draft

curl -X POST https://app.getera.io/api/v1/actions/organizations.save_onboarding_progress \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"step":"Step"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.onboarding_progress_saved"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.save_onboarding_progress", {
  step: "Step"
})
era organizations save_onboarding_progress \
  --step "Step"
tools/call
{
  "name": "era__organizations__save_onboarding_progress",
  "arguments": {
    "step": "Step"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 429 çok sık istek

organizations.set_employee_visible

Personel profilini göster veya gizle — Bu kişinin herkese açık ekip sayfasında ve personel seçicilerde görünüp görünmediği.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/employees/actions/set_employee_visible
API anahtarı ya da OAuth token · organizations:manage
  • Asıl adres: POST /api/v1/actions/organizations.set_employee_visible

Girdi

AlanTürZorunluAçıklama
user_iduuidevetÜye
is_activebooleanevetGösteriliyor

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
member_not_foundKişinin bu çalışma alanında bir personel profili olmalı.
no_changeZaten bu durumdalar.

Yayımladığı olaylar: organizations.employee_hidden, organizations.employee_shown

Neye yazar: employee (update) — Flips the profile’s visibility

curl -X POST https://app.getera.io/api/v1/employees/actions/set_employee_visible \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"user_id":"USER_ID","is_active":true}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.employee_hidden",
    "organizations.employee_shown"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.employees.setEmployeeVisible({
  user_id: "USER_ID",
  is_active: true
})
era employees set_employee_visible \
  --user-id "USER_ID" \
  --is-active true
tools/call
{
  "name": "era__organizations__set_employee_visible",
  "arguments": {
    "user_id": "USER_ID",
    "is_active": true
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 member_not_found, no_change · 429 çok sık istek

organizations.set_era_preferences

Era tercihlerini seç — Era’nın sesi, yanıtları sesli okuma, hangi yapay zekânın yanıtlayacağı, kodlama izinleri ve tema — bilgisayarında ve webde aynı.

Gereken izin organizations:read · veriyi değiştirir

POSThttps://app.getera.io/api/v1/actions/organizations.set_era_preferences
API anahtarı ya da OAuth token · organizations:read

Girdi

AlanTürZorunluAçıklama
prefsobject / arrayTercihler · { voice, speak, source, permissionMode, theme } — null forgets a key.
languagestring (enum)Dil · İzin verilen değerler: en, tr

Yayımladığı olaylar: organizations.era_preferences_changed

Neye yazar: app_user (update) — Remembers your Era preferences for every device

curl -X POST https://app.getera.io/api/v1/actions/organizations.set_era_preferences \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"prefs":{}}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.era_preferences_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.set_era_preferences", {
  prefs: {}
})
era organizations set_era_preferences --data '{"prefs":{}}'
tools/call
{
  "name": "era__organizations__set_era_preferences",
  "arguments": {
    "prefs": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:read izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 429 çok sık istek

organizations.set_interface_language

Arayüz dilini seç — Menülerin, düğmelerin ve mesajların size gösterildiği dil. Çalışma alanını izlemek için boş bırakın.

Gereken izin organizations:read · veriyi değiştirir

POSThttps://app.getera.io/api/v1/actions/organizations.set_interface_language
API anahtarı ya da OAuth token · organizations:read

Girdi

AlanTürZorunluAçıklama
localestring (enum)Arayüz dili · İzin verilen değerler: en, tr

Yayımladığı olaylar: organizations.interface_language_changed

Neye yazar: app_user (update) — Remembers your interface language

curl -X POST https://app.getera.io/api/v1/actions/organizations.set_interface_language \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"locale":"en"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.interface_language_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.set_interface_language", {
  locale: "en"
})
era organizations set_interface_language \
  --locale "en"
tools/call
{
  "name": "era__organizations__set_interface_language",
  "arguments": {
    "locale": "en"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:read izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 429 çok sık istek

organizations.set_member_status

Üyeyi askıya al veya geri al — Birini çıkarmadan erişimini kilitler ve yeniden açar.

Gereken izin organizations:manage · siler ya da geri alınamaz · Era çalıştırırken bir kişiye onaylatır

POSThttps://app.getera.io/api/v1/actions/organizations.set_member_status
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
user_iduuidevetÜye
statusstring (enum)evetDurum · Askıya almak kayıtlarını ve geçmişini korur; kaldırmak korumaz. · İzin verilen değerler: active, suspended

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
cannot_suspend_selfKendinizi askıya alamazsınız. Başka bir sahipten isteyin.
not_a_memberBu kişi bu organizasyonun üyesi değil.
last_owner_protectedBir organizasyonun en az bir aktif sahibi olmalı.
already_setZaten bu durumdalar.

Yayımladığı olaylar: organizations.member_status_changed

Neye yazar: membership (update) — Sets the organization membership status

curl -X POST https://app.getera.io/api/v1/actions/organizations.set_member_status \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"user_id":"USER_ID","status":"active"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.member_status_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.set_member_status", {
  user_id: "USER_ID",
  status: "active"
})
era organizations set_member_status \
  --user-id "USER_ID" \
  --status "active"
tools/call
{
  "name": "era__organizations__set_member_status",
  "arguments": {
    "user_id": "USER_ID",
    "status": "active"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 cannot_suspend_self, not_a_member, last_owner_protected, already_set · 429 çok sık istek

organizations.transfer_ownership

Sahipliği devret — Organizasyonu başka bir üyeye devreder. Siz yönetici olursunuz.

Gereken izin organizations:manage · siler ya da geri alınamaz · Era çalıştırırken bir kişiye onaylatır

POSThttps://app.getera.io/api/v1/actions/organizations.transfer_ownership
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
user_iduuidevetYeni sahip

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
not_a_memberYeni sahip zaten aktif bir üye olmalı.
already_ownerZaten sahip.
not_ownerOrganizasyonu yalnızca mevcut sahip devredebilir.

Yayımladığı olaylar: organizations.ownership_transferred

Neye yazar: membership (update) — Swaps the two organization roles

curl -X POST https://app.getera.io/api/v1/actions/organizations.transfer_ownership \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"user_id":"USER_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.ownership_transferred"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.transfer_ownership", {
  user_id: "USER_ID"
})
era organizations transfer_ownership \
  --user-id "USER_ID"
tools/call
{
  "name": "era__organizations__transfer_ownership",
  "arguments": {
    "user_id": "USER_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 not_a_member, already_owner, not_owner · 429 çok sık istek

organizations.update

Organizasyonu güncelle — Adı, yasal bilgileri, fatura adresi ve her çalışma alanının devraldığı varsayılanlar.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.update
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
namestringAd · Uygulamada adı. · en çok 120
descriptionstringAçıklama · en çok 500
legal_namestringYasal ad · Faturalarda ve sözleşmelerde kullanılan resmi şirket adı. · en çok 200
tax_idstringVergi numarası · en çok 64
primary_emailemailİletişim e-postası
billing_emailemailFatura e-postası
phonephoneTelefon
address_line1stringAdres · en çok 200
address_line2stringAdres satırı 2 · en çok 200
citystringŞehir · en çok 100
postal_codestringPosta kodu · en çok 20
regionstringBölge · en çok 100
default_countrystringÜlke · İki harfli kod. Vergi ve kargo kuralları buna göre belirlenir. · en çok 2
default_currencystringPara birimi · Üç harfli kod. Bir satış kanalı bunu değiştirebilir. · en çok 3
default_localestringDil · en çok 10
timezonestringSaat dilimi · en çok 64
logo_file_iduuidLogo · Geniş bir görsel. E-postalarda ve sitenin kendi görseli yoksa sitede gösterilir. · kimliği: file
icon_file_iduuidSimge · Kare bir görsel. Kenar çubuğunda ve Ana sayfada gösterilir. · kimliği: file

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
not_an_imageLogo ya da simge bu çalışma alanındaki bir görsel dosyası olmalı.
invalid_countryÜlke iki harfli bir kod olmalı; örneğin TR veya DE.
invalid_currencyPara birimi üç harfli bir kod olmalı; örneğin TRY veya EUR.
nothing_to_changeHiçbir alan verilmedi.

Yayımladığı olaylar: organizations.updated

Neye yazar: organization (update) — Updates the organization profile

curl -X POST https://app.getera.io/api/v1/actions/organizations.update \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"name":"Name"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.updated"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.update", {
  name: "Name"
})
era organizations update \
  --name "Name"
tools/call
{
  "name": "era__organizations__update",
  "arguments": {
    "name": "Name"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 not_an_image, invalid_country, invalid_currency, nothing_to_change · 429 çok sık istek

organizations.update_employee_profile

Personel profilini düzenle — Kişi için gösterilen pozisyon, biyografi, deneyim, eğitim, bağlantılar ve uzmanlıklar.

Gereken izin organizations:write · veriyi değiştirir

POSThttps://app.getera.io/api/v1/employees/actions/update_employee_profile
API anahtarı ya da OAuth token · organizations:write
  • Asıl adres: POST /api/v1/actions/organizations.update_employee_profile

Girdi

AlanTürZorunluAçıklama
user_iduuidevetÜye
positionstringPozisyon / unvan · en çok 100
biostringBiyografi · en çok 4000
experience_yearsnumberDeneyim yılı · en çok 80
educationstringEğitim · en çok 2000
social_linksobject / arraySosyal bağlantılar · Adreslenecek platform, her seferinde bir çift — linkedin, instagram, x.
expertise_areasobject / arrayUzmanlıklar · Herkese açık ekip sayfası için serbest metin etiketler. Kişinin hangi hizmetleri verebileceğiyle aynı şey değildir.

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
member_not_foundKişi bu çalışma alanının üyesi olmalı.
not_self_without_manageBaşkasının profilini düzenlemek Yapılandırma yetkisi gerektirir.
experience_negativeDeneyim yılı negatif olamaz.
social_links_not_objectSosyal bağlantılar liste değil, platform–adres çiftleridir.
social_link_url_invalidHer sosyal bağlantı bir http veya https adresi olmalı.

Yayımladığı olaylar: organizations.profile_updated

Neye yazar: employee (upsert) — Creates or updates the staff profile

curl -X POST https://app.getera.io/api/v1/employees/actions/update_employee_profile \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"user_id":"USER_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.profile_updated"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.employees.updateEmployeeProfile({
  user_id: "USER_ID"
})
era employees update_employee_profile \
  --user-id "USER_ID"
tools/call
{
  "name": "era__organizations__update_employee_profile",
  "arguments": {
    "user_id": "USER_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 member_not_found, not_self_without_manage, experience_negative, social_links_not_object, social_link_url_invalid · 429 çok sık istek

organizations.update_workspace

Çalışma alanını güncelle — Adı, URL adı ve çalıştığı para birimi, dil ve saat dilimi.

Gereken izin organizations:manage · siler ya da geri alınamaz

POSThttps://app.getera.io/api/v1/actions/organizations.update_workspace
API anahtarı ya da OAuth token · organizations:manage

Girdi

AlanTürZorunluAçıklama
workspace_iduuidevetÇalışma alanı
namestringAd · en çok 120
slugstringURL adı · Küçük harf, rakam ve kısa çizgi. Değiştirirseniz mevcut bağlantılar da değişir. · en çok 40
descriptionstringAçıklama · en çok 500
currencystringPara birimi · Üç harf. Organizasyonunkini kullanmak için boş bırakın. · en çok 3
localestringDil · en çok 10
timezonestringSaat dilimi · en çok 64
logo_file_iduuidLogo · Geniş bir görsel. E-postalarda ve sitenin kendi görseli yoksa sitede gösterilir. · kimliği: file
icon_file_iduuidSimge · Kare bir görsel. Kenar çubuğunda ve Ana sayfada gösterilir. · kimliği: file

Ön koşullar

Koşul tutmazsa işlem 409 ve şu kodlardan biriyle reddedilir:

KodNe zaman reddedilir
not_an_imageLogo ya da simge bu çalışma alanındaki bir görsel dosyası olmalı.
not_foundBu çalışma alanı bu organizasyonda değil.
slug_formatURL adı bir harfle başlamalı ve yalnızca küçük harf, rakam ve tire içermeli.
slug_takenBu organizasyondaki başka bir çalışma alanı bu URL adını zaten kullanıyor.
invalid_currencyPara birimi üç harfli bir kod olmalı; örneğin TRY veya EUR.
nothing_to_changeHiçbir alan verilmedi.

Yayımladığı olaylar: organizations.workspace_updated

Neye yazar: workspace (update) — Updates the workspace profile

curl -X POST https://app.getera.io/api/v1/actions/organizations.update_workspace \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"workspace_id":"WORKSPACE_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "organizations.workspace_updated"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("organizations.update_workspace", {
  workspace_id: "WORKSPACE_ID"
})
era organizations update_workspace \
  --workspace-id "WORKSPACE_ID"
tools/call
{
  "name": "era__organizations__update_workspace",
  "arguments": {
    "workspace_id": "WORKSPACE_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde organizations:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 not_an_image, not_found, slug_format, slug_taken, invalid_currency, nothing_to_change · 429 çok sık istek

Veri modelleri

Employee

Tablo employee · Kaynak employees

  • GET /api/v1/employees
  • GET /api/v1/employees/{id}
SütunTürBoş olabilirİzin verilen değerlerBağlı olduğu tablo
organization_idstring (uuid) · uuidorganization
workspace_idstring (uuid) · uuidworkspace
user_idstring (uuid) · uuidapp_user
biostring · textevet
positionstring · textevet
social_linksobject · jsonb
expertise_areasstring[] · text[]
experience_yearsinteger · int4
educationstring · textevet
is_activeboolean · bool
sort_orderinteger · int4
updated_atstring (date-time) · timestamptz

Birincil anahtar: workspace_id, user_id

Denetimler:

  • CHECK ((experience_years >= 0))
  • CHECK ((jsonb_typeof(social_links) = 'object'::text))

Olaylar

İş akışları ve webhook'lar bu olaylara tepki verir.

OlayNe olurTaşıdığı alanlar
organizations.employee_hiddenBir personel profili herkese açık ekip sayfasından kaldırıldı.user_id
organizations.employee_shownBir personel profili herkese açık ekip sayfasına geri kondu.user_id
organizations.era_preferences_changedBiri Era tercihlerini değiştirdi (ses, konuşma, yapay zekâ kaynağı, izinler, tema).user_id, keys
organizations.first_run_savedEra’nın ilk kurulumu kaydedildi: sonraya bırakılan, yeniden ele alınan ya da biten adımlar.skipped, finished
organizations.interface_language_changedBiri arayüz dilini değiştirdi.user_id, locale
organizations.invite_resentBekleyen bir davet yeni bir bağlantıyla yeniden gönderildi.email, invitation_id
organizations.invite_revokedBir davet geri çekildi.email
organizations.member_invitedBir davet gönderildi.email, org_role
organizations.member_joinedBiri bir daveti kabul etti.user_id, org_role
organizations.member_offboardedAyrılan bir üyenin sahip olduğu şeyler devredildi ya da kapatıldı.user_id, transferred_to, ownerUserId, result
organizations.member_removedBiri kuruluştan çıkarıldı.user_id
organizations.member_status_changedBiri askıya alındı ya da yeniden etkinleştirildi.user_id, status
organizations.onboarding_progress_savedİlk işletme kurulumu kaydedildi ya da tamamlandı.step, completed
organizations.ownership_transferredKuruluş el değiştirdi.from, to
organizations.profile_updatedBirinin personel profili yazıldı.user_id
organizations.updatedKuruluş profili değiştirildi.field
organizations.workspace_createdYeni bir çalışma alanı oluşturuldu.workspace_id, name
organizations.workspace_deletedBir çalışma alanı silindi.workspace_id
organizations.workspace_updatedBir çalışma alanı profili değiştirildi.workspace_id, field
Bu sayfa yardımcı oldu mu?