Ayarlar API

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

İşletmeniz, bu çalışma alanı ve her modül için ayarlar.

Modül kodu settings · 1 işlem · 2 veri modeli · 1 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ı: settings (hepsi), settings:read (yalnız okuma) ya da settings:<yetenek>.

Kaynaklar

KaynakTabloListeleme ve okumaPOSTPATCHDELETE
number_sequencesnumber_sequence/api/v1/number_sequences
settingssetting/api/v1/settings

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
settings.setsettings:manageAyarı değiştir

settings.set

Ayarı değiştir — Organizasyon, çalışma alanı veya modül katmanında tek bir ayarı yazar.

Gereken izin settings:manage · veriyi değiştirir

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

Girdi

AlanTürZorunluAçıklama
layerstring (enum)evetKatman · İzin verilen değerler: organization, workspace, module
module_codestringModül · en çok 41
keystringevetAnahtar · en çok 80
valuestringevetDeğer

Ön koşullar

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

KodNe zaman reddedilir
module_requiredModül ayarı hangi modüle ait olduğunu belirtmeli.
unknown_settingBu modül böyle bir ayar tanımlamıyor.
invalid_valueDeğer, ayarın türüne uymuyor.

Yayımladığı olaylar: settings.changed

Neye yazar: setting (upsert) — Writes the setting

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.settings.set({
  layer: "organization",
  key: "Key",
  value: "Value"
})
era settings set \
  --layer "organization" \
  --key "Key" \
  --value "Value"
tools/call
{
  "name": "era__settings__set",
  "arguments": {
    "layer": "organization",
    "key": "Key",
    "value": "Value"
  }
}

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

Veri modelleri

NumberSequence

Tablo number_sequence · Kaynak number_sequences

  • GET /api/v1/number_sequences
  • GET /api/v1/number_sequences/{id}
SütunTürBoş olabilirİzin verilen değerlerBağlı olduğu tablo
idstring (uuid) · uuid
organization_idstring (uuid) · uuidorganization
workspace_idstring (uuid) · uuidworkspace
codestring · text
prefixstring · text
next_valuestring (int64) · int8
paddinginteger · int4

Birincil anahtar: id

Tekil: workspace_id, code

Setting

Tablo setting · Kaynak settings

  • GET /api/v1/settings
  • GET /api/v1/settings/{id}
SütunTürBoş olabilirİzin verilen değerlerBağlı olduğu tablo
idstring (uuid) · uuid
organization_idstring (uuid) · uuidorganization
workspace_idstring (uuid) · uuidevetworkspace
module_codestring · textevetmodule
keystring · text
valueobject · jsonb
updated_bystring (uuid) · uuidevetapp_user
updated_atstring (date-time) · timestamptz

Birincil anahtar: id

Denetimler:

  • CHECK (((module_code IS NULL) OR (workspace_id IS NOT NULL)))

Olaylar

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

OlayNe olurTaşıdığı alanlar
settings.changedBir ayar değiştirildi.module_code, key
Bu sayfa yardımcı oldu mu?