Tablolar API

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

Size ait tablolar ve her kayda ek alanlar.

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

İşlemler

İşlemGereken izinNe yapar
data.add_columndata:manageAlan ekle
data.add_computed_fielddata:manageArama, özet veya formül alanı ekle
data.change_column_typedata:manageAlan türünü değiştir
data.clear_record_valuesdata:deleteAlan grubunu kayıttan kaldır
data.create_relationdata:manageBaşka bir tabloya bağla
data.create_tabledata:manageTablo ekle
data.create_table_groupdata:manageTablo grubu ekle
data.delete_rowdata:deleteKaydı sil
data.delete_row_policydata:manageSatır kuralını kaldır
data.delete_rowsdata:deleteBirden çok kaydı sil
data.delete_tabledata:deleteTabloyu sil
data.delete_table_groupdata:manageTablo grubunu sil
data.duplicate_tabledata:manageTabloyu çoğalt
data.duplicate_table_groupdata:manageBir tablo klasörünü çoğalt
data.export_rowsdata:exportKayıtları dışa aktar
data.insert_rowdata:writeKayıt ekle
data.insert_rowsdata:importKayıtları içe aktar
data.link_recordsdata:writeKayıtları bağla
data.move_rowdata:writeKaydı taşı
data.move_tabledata:manageTabloyu bir gruba taşı
data.press_buttondata:writeDüğmeye bas
data.purge_rowsdata:deleteTablonun kayıtlarını temizle
data.remove_columndata:deleteAlanı kaldır
data.rename_tabledata:manageTabloyu düzenle
data.rename_table_groupdata:manageTablo grubunu yeniden adlandır
data.set_display_fielddata:manageGörünen değer yap
data.set_fielddata:writeÖzel alanı doldur
data.set_record_valuesdata:writeEk alanları doldur
data.set_row_policydata:manageKimin hangi satırları göreceğini daralt
data.set_select_optionsdata:manageSeçenekleri düzenle
data.set_table_permissiondata:manageTabloyu kimin kullanabileceğini değiştir
data.unlink_recordsdata:writeKayıtların bağını kaldır
data.update_columndata:manageAlanı düzenle
data.update_computed_fielddata:manageHesaplanan alanı düzenle
data.update_rowdata:writeKaydı düzenle
data.update_rowsdata:writeBirden çok kaydı düzenle
data.upsert_rowdata:importKayıt ekle veya güncelle

data.add_column

Alan ekle — Bir alan tanımlar — türünü, zorunlu olup olmadığını ve sunduklarını.

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

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

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
titlestringevetEtiket · en çok 200
fieldKeystringevetAnahtar · en çok 100
uiTypestringevetTür · en çok 40
uiHintstringŞöyle gösterilir · en çok 30
unitstringBirim · en çok 30
isRequiredbooleanZorunlu
isFilterablebooleanFiltrelenebilir
isListablebooleanSütun olarak kullanılabilir
isPublicbooleanVitrinde görünür
helpTextstringYardım metni · en çok 255
descriptionstringAçıklama · en çok 2000
colorstringRenk · en çok 7
defaultValuestringVarsayılan · en çok 500
sortOrdernumberSipariş
referenceModuleCodestringİşaret ettiği kayıt türü · en çok 60
referenceRecordTypestringKayıt türü · en çok 60
validationobject / arrayDoğrulama
optionsobject / arraySeçimler
displayobject / arrayNasıl görünür

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
invalid_field_keyAnahtar boşluk içermez — filtrelerde anahtar olarak kullanılır.
unknown_ui_typeTür, motorun anladığı türlerden biri olmalı.
field_key_takenBir gruptaki iki alan aynı anahtarı paylaşamaz.
field_key_taken_on_targetİki grup aynı kayıt türüne aynı anahtarı ekleyemez.
key_shadows_standard_fieldÖzel bir alan standart bir alanın adını alamaz.
enum_without_optionsSeçim alanı seçenekler gerektirir.
invalid_display_optionGörünüm seçeneği alan türünde bulunmalı ve geçerli bir değeri olmalı.
reference_module_disabledGösterdiği modül açık olmalı.
required_without_default_on_existing_rowsVar olan kayıtlarda bir alanı zorunlu yapmak bir varsayılan değer gerektirir.

Yayımladığı olaylar: data.column_added

Neye yazar: data_column (insert) — Defines the field; data_select_option (upsert) — Writes its choices

curl -X POST https://app.getera.io/api/v1/actions/data.add_column \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"dataTableId":"DATA_TABLE_ID","title":"Label","fieldKey":"Key","uiType":"Type"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.column_added"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.add_column", {
  dataTableId: "DATA_TABLE_ID",
  title: "Label",
  fieldKey: "Key",
  uiType: "Type"
})
era data add_column \
  --data-table-id "DATA_TABLE_ID" \
  --title "Label" \
  --field-key "Key" \
  --ui-type "Type"
tools/call
{
  "name": "era__data__add_column",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "title": "Label",
    "fieldKey": "Key",
    "uiType": "Type"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, invalid_field_key, unknown_ui_type, field_key_taken, field_key_taken_on_target, key_shadows_standard_field, enum_without_options, invalid_display_option, reference_module_disabled, required_without_default_on_existing_rows · 429 çok sık istek

data.add_computed_field

Arama, özet veya formül alanı ekle — Değeri hesaplanan bir alan ekler — bağlı kayıtlardan ya da bu kaydın kendi alanlarından.

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

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

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
kindstring (enum)evetTür · İzin verilen değerler: lookup, rollup, formula, count, barcode, qr_code, button, created_time, last_modified_time, created_by, last_modified_by, auto_number
titlestringevetAd · en çok 200
fieldKeystringAnahtar · en çok 100
relationColumnIduuidBağlantı üzerinden · kimliği: data_column
targetColumnIduuidBağlı tablonun alanı · kimliği: data_column
fnstring (enum)Özet · İzin verilen değerler: count, sum, avg, min, max, countDistinct, sumDistinct, avgDistinct
formulastringFormül · en çok 2000
sourceColumnIduuidKodun taşıdığı alan · kimliği: data_column
buttonActionstring (enum)Tıklanınca · İzin verilen değerler: url, workflow
buttonUrlstringBağlantı · en çok 2000
buttonLabelstringDüğme yazısı · en çok 60
buttonColorstringDüğme rengi · en çok 7

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindAlan grubunun üzerinde hesap yapılacak satırı yoktur.
unknown_ui_typeBurada yalnızca hesaplanan türler eklenir.
invalid_button_urlBağlantı düğmesinin açacağı bir web adresi olmalı.
title_requiredAlanın bir adı olmalı.
invalid_field_keyAnahtar boşluk içermez — filtrelerde anahtar olarak kullanılır.
field_key_takenBir tablodaki iki alan aynı anahtarı paylaşamaz.
not_a_link_fieldArama veya özet alanı bu tablonun bir bağlantı alanı üzerinden okur.
column_not_foundAranan alan bağlı tablonun alanlarından biri olmalı.
invalid_formulaOkunamayan bir formül kaydederken reddedilir.

Yayımladığı olaylar: data.column_added

Neye yazar: data_column (insert) — Defines the computed field

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.add_computed_field", {
  dataTableId: "DATA_TABLE_ID",
  kind: "lookup",
  title: "Name"
})
era data add_computed_field \
  --data-table-id "DATA_TABLE_ID" \
  --kind "lookup" \
  --title "Name"
tools/call
{
  "name": "era__data__add_computed_field",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "kind": "lookup",
    "title": "Name"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, unknown_ui_type, invalid_button_url, title_required, invalid_field_key, field_key_taken, not_a_link_field, column_not_found, invalid_formula · 429 çok sık istek

data.change_column_type

Alan türünü değiştir — Alanın türünü değiştirir; dönüşmeyecekleri silmek yerine sayısını vererek reddeder.

Gereken izin data:manage · dışarıya ulaşır (gönderir, yayımlar ya da ücret alır) · Era çalıştırırken bir kişiye onaylatır

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

Girdi

AlanTürZorunluAçıklama
iduuidevetAlan · kimliği: data_column
uiTypestringevetYeni tür · en çok 40

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundAlan bulunmalı.
unknown_ui_typeTür, motorun anladığı türlerden biri olmalı.
no_changeYeni tür eskisinden farklı olmalı.
incompatible_valuesYeni türde okunamayan kayıtlı değerler değişikliği durdurur.

Yayımladığı olaylar: data.column_changed

Neye yazar: data_column (update) — Retypes the field; data_value (update) — Moves values to the right column

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.change_column_type", {
  id: "DATA_COLUMN_ID",
  uiType: "New type"
})
era data change_column_type \
  --id "DATA_COLUMN_ID" \
  --ui-type "New type"
tools/call
{
  "name": "era__data__change_column_type",
  "arguments": {
    "id": "DATA_COLUMN_ID",
    "uiType": "New type"
  }
}

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

data.clear_record_values

Alan grubunu kayıttan kaldır — Tek bir kayıttan bütün bir ek alan grubunu çıkarır.

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

POSThttps://app.getera.io/api/v1/actions/data.clear_record_values
API anahtarı ya da OAuth token · data:delete

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetAlan grubu · kimliği: data_table
recordTypestringevetKayıt türü · en çok 60
recordIduuidevetKayıt

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundAlan grubu bulunmalı.
wrong_table_kindKendi satırları olan bir tablo bu yolla kaldırılmaz.
nothing_to_purgeKaldırılacak kayıtlı bir şey olmalı.

Yayımladığı olaylar: data.record_values_changed

Neye yazar: data_value (delete) — Deletes the group’s values

curl -X POST https://app.getera.io/api/v1/actions/data.clear_record_values \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"dataTableId":"DATA_TABLE_ID","recordType":"Record type","recordId":"RECORD_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.record_values_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.clear_record_values", {
  dataTableId: "DATA_TABLE_ID",
  recordType: "Record type",
  recordId: "RECORD_ID"
})
era data clear_record_values \
  --data-table-id "DATA_TABLE_ID" \
  --record-type "Record type" \
  --record-id "RECORD_ID"
tools/call
{
  "name": "era__data__clear_record_values",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "recordType": "Record type",
    "recordId": "RECORD_ID"
  }
}

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

data.create_relation

Başka bir tabloya bağla — Buraya bir bağlantı alanı, diğer tabloya eşini ekler — çoğa bir, bire çok, çoğa çok veya bire bir.

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

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

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
targetTableIduuidevetBağlantı adresi · kimliği: data_table
kindstring (enum)evetBuradaki her kayıt… · İzin verilen değerler: has_many, belongs_to, many_to_many, one_to_one
titlestringevetBuradaki alan adı · en çok 200
targetTitlestringDiğer tablodaki alan adı · en çok 200
onDeletestring (enum)Üst kayıt silindiğinde · İzin verilen değerler: unlink, restrict, cascade

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
target_table_not_foundBağlanılacak tablo bulunmalı.
wrong_table_kindYalnızca kendi kayıtları olan tablolar bağlanabilir.
invalid_on_deleteÇoğa çok bağlantının silmeyi zincirleyeceği bir üst kaydı yoktur.
title_requiredBağlantı alanının bir adı olmalı.
field_key_takenBağlantı alanının anahtarı bu tabloda boşta olmalı.

Yayımladığı olaylar: data.relation_created

Neye yazar: data_relation (insert) — Records the relation; data_column (insert) — Adds a link field on each side

curl -X POST https://app.getera.io/api/v1/actions/data.create_relation \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"dataTableId":"DATA_TABLE_ID","targetTableId":"DATA_TABLE_ID","kind":"has_many","title":"Field name here"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.relation_created"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.create_relation", {
  dataTableId: "DATA_TABLE_ID",
  targetTableId: "DATA_TABLE_ID",
  kind: "has_many",
  title: "Field name here"
})
era data create_relation \
  --data-table-id "DATA_TABLE_ID" \
  --target-table-id "DATA_TABLE_ID" \
  --kind "has_many" \
  --title "Field name here"
tools/call
{
  "name": "era__data__create_relation",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "targetTableId": "DATA_TABLE_ID",
    "kind": "has_many",
    "title": "Field name here"
  }
}

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

data.create_table

Tablo ekle — Size ait bir tablo ya da başka bir modülün kayıtları için ek alanlar açar.

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

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

Girdi

AlanTürZorunluAçıklama
codestringevetSistem adı · en çok 60
titlestringevetGörünen ad · en çok 200
descriptionstringAçıklama · en çok 2000
iconstringSimge · en çok 40
kindstring (enum)Tür · İzin verilen değerler: table, extension
extendsModuleCodestringEklenecek yer · en çok 60
extendsRecordTypestringKayıt türü · en çok 60
maxRowsnumberKayıt sınırı · en az 1

Ön koşullar

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

KodNe zaman reddedilir
title_requiredTablonun bir görünen adı olmalı.
invalid_codeSistem adı snake_case olmalı.
code_takenİki tablo aynı sistem adını paylaşamaz.
extends_unknown_moduleBağlandığı modül bulunmalı.
extends_module_disabledBu modül burada açık olmalı.
table_limit_reachedBir çalışma alanının tablo sınırı vardır.

Yayımladığı olaylar: data.table_created

Neye yazar: data_table (insert) — Opens the table

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.create_table", {
  code: "System name",
  title: "Display name"
})
era data create_table \
  --code "System name" \
  --title "Display name"
tools/call
{
  "name": "era__data__create_table",
  "arguments": {
    "code": "System name",
    "title": "Display name"
  }
}

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

data.create_table_group

Tablo grubu ekle — İlgili tabloları bir arada tutmak için Tablolar listesinde bir klasör.

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

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

Girdi

AlanTürZorunluAçıklama
namestringevetAd · en çok 120

Ön koşullar

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

KodNe zaman reddedilir
group_name_requiredGrubun bir adı olmalı.
group_name_takenİki grup aynı adı taşıyamaz.

Yayımladığı olaylar: data.table_group_created

Neye yazar: data_table_group (insert) — Adds the group

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

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

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

data.delete_row

Kaydı sil — Kendi kayıtlarının sahibi olan bir tablodan satır kaldırır.

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

POSThttps://app.getera.io/api/v1/actions/data.delete_row
API anahtarı ya da OAuth token · data:delete

Girdi

AlanTürZorunluAçıklama
iduuidevetKayıt · kimliği: data_row

Ön koşullar

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

KodNe zaman reddedilir
row_not_foundKayıt bulunmalı.
row_policy_deniesBir satır kuralı bir kaydı erişiminizin dışına çıkarabilir.
referenced_by_relationSilmeyi engelleyecek şekilde ayarlanmış bir bağlantı, alt kayıtları varken üst kaydı korur.

Yayımladığı olaylar: data.row_deleted

Neye yazar: data_row (delete) — Deletes the row, and its children where a link cascades

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.delete_row", {
  id: "DATA_ROW_ID"
})
era data delete_row \
  --id "DATA_ROW_ID"
tools/call
{
  "name": "era__data__delete_row",
  "arguments": {
    "id": "DATA_ROW_ID"
  }
}

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

data.delete_row_policy

Satır kuralını kaldır — Bir satır kuralını siler. Gizlediği satırlar geri gelir.

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

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

Girdi

AlanTürZorunluAçıklama
policyIduuidevetKural

Ön koşullar

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

KodNe zaman reddedilir
policy_not_foundKural bulunmalı.

Yayımladığı olaylar: data.row_policy_changed

Neye yazar: data_table_policy (delete) — Deletes the rule and its subjects

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.delete_row_policy", {
  policyId: "POLICY_ID"
})
era data delete_row_policy \
  --policy-id "POLICY_ID"
tools/call
{
  "name": "era__data__delete_row_policy",
  "arguments": {
    "policyId": "POLICY_ID"
  }
}

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

data.delete_rows

Birden çok kaydı sil — Seçilen veya filtrelenen kayıtları tek seferde siler; her bağlantının silme kuralına uyar.

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

POSThttps://app.getera.io/api/v1/actions/data.delete_rows
API anahtarı ya da OAuth token · data:delete

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
idsobject / arrayKayıtlar
conditionsobject / arrayFiltre

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindAlan grubunun kendi satırları yoktur.
filter_matches_nothingSeçim veya filtre en az bir kayda ulaşmalı.
filter_too_broadToplu silme bir seçim veya filtre gerektirir ve sınırlıdır.
row_policy_deniesSilinen her kayıt, satır kurallarınızın silmenize izin verdiği bir kayıt olmalı.
invalid_filterDerlenemeyen bir filtre reddedilir.
referenced_by_relationSilmeyi engelleyecek şekilde ayarlanmış bir bağlantı, alt kayıtları varken üst kaydı korur.

Yayımladığı olaylar: data.rows_deleted

Neye yazar: data_row (delete) — Deletes the records

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.delete_rows", {
  dataTableId: "DATA_TABLE_ID"
})
era data delete_rows \
  --data-table-id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__delete_rows",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:delete izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, filter_matches_nothing, filter_too_broad, row_policy_denies, invalid_filter, referenced_by_relation · 429 çok sık istek

data.delete_table

Tabloyu sil — Bir tabloyu ve alan tanımlarını kaldırır — içi boşaldığında.

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

POSThttps://app.getera.io/api/v1/actions/data.delete_table
API anahtarı ya da OAuth token · data:delete

Girdi

AlanTürZorunluAçıklama
iduuidevetTablo · kimliği: data_table

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
has_rowsÖnce kayıtları temizlenmeli; kaç kayıt olduğu gösterilir.
referenced_by_relationBuraya bağlanan başka bir tablo önce bağlantı alanını kaldırmalı.

Yayımladığı olaylar: data.table_deleted

Neye yazar: data_table (delete) — Deletes the table and its columns

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.delete_table", {
  id: "DATA_TABLE_ID"
})
era data delete_table \
  --id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__delete_table",
  "arguments": {
    "id": "DATA_TABLE_ID"
  }
}

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

data.delete_table_group

Tablo grubunu sil — Klasörü kaldırır. İçindeki tablolar kalır, hiçbir gruba bağlı olmadan.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetGrup

Ön koşullar

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

KodNe zaman reddedilir
table_group_not_foundGrup bulunmalı.

Yayımladığı olaylar: data.table_group_deleted

Neye yazar: data_table (update) — Takes its tables out of the group; data_table_group (delete) — Deletes the group

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.delete_table_group", {
  id: "ID_ID"
})
era data delete_table_group \
  --id "ID_ID"
tools/call
{
  "name": "era__data__delete_table_group",
  "arguments": {
    "id": "ID_ID"
  }
}

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

data.duplicate_table

Tabloyu çoğalt — Bir tablonun alanlarını ve seçeneklerini, isterseniz kayıtlarını da, yeni bir tabloya kopyalar.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetTablo · kimliği: data_table
titlestringKopyanın adı · en çok 200
withRowsbooleanKayıtları da kopyala

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.

Yayımladığı olaylar: data.table_duplicated

Neye yazar: data_table (insert) — Opens the copy; data_column (insert) — Copies the fields; data_select_option (insert) — Copies the choices; data_row (insert) — Copies the records, when asked

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.duplicate_table", {
  id: "DATA_TABLE_ID"
})
era data duplicate_table \
  --id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__duplicate_table",
  "arguments": {
    "id": "DATA_TABLE_ID"
  }
}

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

data.duplicate_table_group

Bir tablo klasörünü çoğalt — Bir tablo klasörünü ve tablolarını, isterseniz kayıtlarıyla birlikte kopyalar. Dış bağlantılar ve otomatik işlemler asıl klasörde kalır.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetBase
namestringevetKopyanın adı · en çok 120
withRowsbooleanKayıtları kopyala

Ön koşullar

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

KodNe zaman reddedilir
table_group_not_foundKopyalanacak tablo klasörü bulunmalı.
group_name_requiredKopyanın bir adı olmalı.
group_name_takenKopyanın adı kullanılmıyor olmalı.
table_not_foundKopyalanan her tablo hâlâ bulunmalı.

Yayımladığı olaylar: data.table_group_created, data.table_duplicated

Neye yazar: data_table_group (insert) — Creates the copied Base; data_table (insert) — Copies its tables; data_table (update) — Places copies in the new Base; data_column (insert) — Copies independent fields; data_select_option (insert) — Copies choices; data_row (insert) — Copies records if selected; data_column (update) — Remaps computed field configurations; data_relation (insert) — Copies internal relations; data_row_link (insert) — Copies internal record links

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.duplicate_table_group", {
  id: "ID_ID",
  name: "Copy name"
})
era data duplicate_table_group \
  --id "ID_ID" \
  --name "Copy name"
tools/call
{
  "name": "era__data__duplicate_table_group",
  "arguments": {
    "id": "ID_ID",
    "name": "Copy name"
  }
}

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

data.export_rows

Kayıtları dışa aktar — Yalnızca ekrandaki sayfayı değil, filtrenin ve satır kurallarınızın bıraktığı her kaydı döndürür.

Gereken izin data:export · dışarıya ulaşır (gönderir, yayımlar ya da ücret alır)

POSThttps://app.getera.io/api/v1/actions/data.export_rows
API anahtarı ya da OAuth token · data:export

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
conditionsobject / arrayFiltre
searchstringAra · en çok 200
limitnumberSınır · en az 1

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindAlan grubunun dışa aktarılacak satırı yoktur.
invalid_filterDerlenemeyen bir filtre reddedilir.
unknown_fieldFiltre yalnızca tablodaki alanları belirtebilir.

Yayımladığı olaylar: data.rows_exported

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.export_rows", {
  dataTableId: "DATA_TABLE_ID"
})
era data export_rows \
  --data-table-id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__export_rows",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID"
  }
}

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

data.insert_row

Kayıt ekle — Kendi kayıtlarının sahibi olan bir tabloya satır yazar.

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

POSThttps://app.getera.io/api/v1/actions/data.insert_row
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
dataobject / arrayevetDeğerler

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindEk alan tablolarının kendi satırları yoktur.
row_limit_reachedBir tablonun kayıt sınırı vardır; okuma devam eder.
unknown_fieldHer anahtar tablodaki bir alan olmalı.
required_field_missingZorunlu alanlar doldurulmalı.
type_mismatchDeğer, alanının türünde okunabilmeli.
not_a_memberKullanıcı alanı bu çalışma alanının üyelerinden birini tutar.
readonly_fieldSalt okunur bir alana yazılamaz.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.
row_policy_deniesYeni kaydı yazarından gizleyecek bir satır kuralı yazmayı reddeder.

Yayımladığı olaylar: data.row_created

Neye yazar: data_row (insert) — Writes the row

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.insert_row", {
  dataTableId: "DATA_TABLE_ID",
  data: {}
})
era data insert_row --data '{"dataTableId":"DATA_TABLE_ID","data":{}}'
tools/call
{
  "name": "era__data__insert_row",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "data": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, row_limit_reached, unknown_field, required_field_missing, type_mismatch, not_a_member, readonly_field, invalid_field_format, row_policy_denies · 429 çok sık istek

data.insert_rows

Kayıtları içe aktar — Bir tabloya bir grup kayıt yazar — hepsi ya da hiçbiri.

Gereken izin data:import · dışarıya ulaşır (gönderir, yayımlar ya da ücret alır) · Era çalıştırırken bir kişiye onaylatır

POSThttps://app.getera.io/api/v1/actions/data.insert_rows
API anahtarı ya da OAuth token · data:import

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
rowsobject / arrayevetKayıtlar
dryRunbooleanYalnızca dosyayı kontrol et
skipInvalidbooleanSorunlu satırları atla

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindEk alan tablolarının kendi satırları yoktur.
nothing_to_importToplu işlem boş olmamalı.
import_batch_too_largeToplu işlemin bir sınırı vardır; dosyayı istemci böler.
row_limit_reachedToplu işlemin tamamı tablonun sınırına sığmalı.
unknown_fieldDosyadaki her sütun tablodaki bir alan olmalı.
required_field_missingZorunlu alanlar doldurulmalı.
type_mismatchDeğer, alanının türünde okunabilmeli.
not_a_memberKullanıcı alanı bu çalışma alanının üyelerinden birini tutar.
readonly_fieldSalt okunur bir alana yazılamaz.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.

Yayımladığı olaylar: data.rows_imported

Neye yazar: data_row (insert) — Writes the batch

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.insert_rows", {
  dataTableId: "DATA_TABLE_ID",
  rows: {}
})
era data insert_rows --data '{"dataTableId":"DATA_TABLE_ID","rows":{}}'
tools/call
{
  "name": "era__data__insert_rows",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "rows": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:import izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, nothing_to_import, import_batch_too_large, row_limit_reached, unknown_field, required_field_missing, type_mismatch, not_a_member, readonly_field, invalid_field_format · 429 çok sık istek

Kayıtları bağla — Diğer tablonun kayıtlarını bir bağlantı alanıyla bu kayda bağlar.

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

POSThttps://app.getera.io/api/v1/actions/data.link_records
API anahtarı ya da OAuth token · data:write
AlanTürZorunluAçıklama
columnIduuidevetBağlantı alanı · kimliği: data_column
rowIduuidevetKayıt · kimliği: data_row
targetRowIdsobject / arrayevetBağlanacak kayıtlar

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

KodNe zaman reddedilir
column_not_foundBağlantı alanı bulunmalı.
not_a_link_fieldAlan başka bir tabloya bağlantı olmalı.
row_not_foundKayıt bu tabloda olmalı.
row_policy_deniesBir satır kuralı bir kaydı erişiminizin dışına çıkarabilir.
link_target_invalidBağlanan her kayıt diğer tabloda olmalı.
link_cardinalityBire çok ilişkide alt kaydın tek üstü olur; bire birde her birinden birer tane.

Yayımladığı olaylar: data.records_linked

Neye yazar: data_row_link (insert) — Writes the links

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.link_records", {
  columnId: "DATA_COLUMN_ID",
  rowId: "DATA_ROW_ID",
  targetRowIds: {}
})
era data link_records --data '{"columnId":"DATA_COLUMN_ID","rowId":"DATA_ROW_ID","targetRowIds":{}}'
tools/call
{
  "name": "era__data__link_records",
  "arguments": {
    "columnId": "DATA_COLUMN_ID",
    "rowId": "DATA_ROW_ID",
    "targetRowIds": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 column_not_found, not_a_link_field, row_not_found, row_policy_denies, link_target_invalid, link_cardinality · 429 çok sık istek

data.move_row

Kaydı taşı — Kaydı, tablosunun elle sıralamasında başka bir yere koyar — başka bir kaydın hemen arkasına ya da en üste.

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

POSThttps://app.getera.io/api/v1/actions/data.move_row
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
iduuidevetKayıt · kimliği: data_row
afterIduuidSonrasına gelecek kayıt · En üste taşımak için boş bırakın. · kimliği: data_row

Ön koşullar

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

KodNe zaman reddedilir
row_not_foundKayıt ve arkasına gideceği kayıt aynı tabloda bulunmalı.
row_policy_deniesBir satır kuralı bir kaydı erişiminizin dışına çıkarabilir.

Yayımladığı olaylar: data.row_updated

Neye yazar: data_row (update) — Sets the record’s manual order

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.move_row", {
  id: "DATA_ROW_ID"
})
era data move_row \
  --id "DATA_ROW_ID"
tools/call
{
  "name": "era__data__move_row",
  "arguments": {
    "id": "DATA_ROW_ID"
  }
}

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

data.move_table

Tabloyu bir gruba taşı — Bir tabloyu bir gruba koyar ya da gruptan çıkarır.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetTablo · kimliği: data_table
groupIduuidGrup

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
table_group_not_foundGrup bulunmalı.

Yayımladığı olaylar: data.table_moved

Neye yazar: data_table (update) — Sets the table’s group

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.move_table", {
  id: "DATA_TABLE_ID"
})
era data move_table \
  --id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__move_table",
  "arguments": {
    "id": "DATA_TABLE_ID"
  }
}

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

data.press_button

Düğmeye bas — Bu düğmeyi dinleyen iş akışlarını, basıldığı kayıtla başlatır.

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

POSThttps://app.getera.io/api/v1/actions/data.press_button
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
columnIduuidevetDüğme · kimliği: data_column
rowIduuidevetKayıt · kimliği: data_row

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundDüğme mevcut olmalı.
not_a_buttonYalnızca iş akışı başlatan bir düğmeye basılabilir.
row_not_foundKayıt mevcut olmalı ve size görünür olmalı.

Yayımladığı olaylar: data.button_pressed

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.press_button", {
  columnId: "DATA_COLUMN_ID",
  rowId: "DATA_ROW_ID"
})
era data press_button \
  --column-id "DATA_COLUMN_ID" \
  --row-id "DATA_ROW_ID"
tools/call
{
  "name": "era__data__press_button",
  "arguments": {
    "columnId": "DATA_COLUMN_ID",
    "rowId": "DATA_ROW_ID"
  }
}

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

data.purge_rows

Tablonun kayıtlarını temizle — Tabloya kaydedilmiş her şeyi atar; alanları korur.

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

POSThttps://app.getera.io/api/v1/actions/data.purge_rows
API anahtarı ya da OAuth token · data:delete

Girdi

AlanTürZorunluAçıklama
iduuidevetTablo · kimliği: data_table

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
nothing_to_purgeTemizlenecek bir şey olmalı.
referenced_by_relationSilmeyi engelleyecek şekilde ayarlanmış bir bağlantı temizlemeyi durdurur.

Yayımladığı olaylar: data.rows_purged

Neye yazar: data_row (delete) — Deletes the rows; data_value (delete) — Deletes the values

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.purge_rows", {
  id: "DATA_TABLE_ID"
})
era data purge_rows \
  --id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__purge_rows",
  "arguments": {
    "id": "DATA_TABLE_ID"
  }
}

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

data.remove_column

Alanı kaldır — Bir alan tanımını ve ona kaydedilen her şeyi siler.

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

POSThttps://app.getera.io/api/v1/actions/data.remove_column
API anahtarı ya da OAuth token · data:delete

Girdi

AlanTürZorunluAçıklama
iduuidevetAlan · kimliği: data_column

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundAlan bulunmalı.
is_primary_displayKaydın adını veren alan kaldırılamaz.
used_by_saved_viewOna göre filtreleyen kayıtlı bir görünüm sessizce boşalırdı.
used_by_formulaOnu okuyan bir formül sonsuza dek boş kalırdı.
used_by_relationOnun üzerinden okuyan bir arama veya özet alanı kaynağını kaybederdi.

Yayımladığı olaylar: data.column_removed

Neye yazar: data_column (delete) — Deletes the field and its values

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.remove_column", {
  id: "DATA_COLUMN_ID"
})
era data remove_column \
  --id "DATA_COLUMN_ID"
tools/call
{
  "name": "era__data__remove_column",
  "arguments": {
    "id": "DATA_COLUMN_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:delete izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 column_not_found, is_primary_display, used_by_saved_view, used_by_formula, used_by_relation · 429 çok sık istek

data.rename_table

Tabloyu düzenle — Tablonun adını ve açıklamasını değiştirir.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetTablo · kimliği: data_table
codestringSistem adı · en çok 60
titlestringGörünen ad · en çok 200
descriptionstringAçıklama · en çok 2000
iconstringSimge · en çok 40

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
code_takenİki tablo aynı sistem adını paylaşamaz.
invalid_codeSistem adı snake_case olmalı.
no_changeBir şeyin değişmesi gerekiyor.

Yayımladığı olaylar: data.table_renamed

Neye yazar: data_table (update) — Renames the table

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.rename_table", {
  id: "DATA_TABLE_ID"
})
era data rename_table \
  --id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__rename_table",
  "arguments": {
    "id": "DATA_TABLE_ID"
  }
}

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

data.rename_table_group

Tablo grubunu yeniden adlandır — Bir grubun adını veya listedeki yerini değiştirir.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetGrup
namestringAd · en çok 120
sortOrdernumberKonum

Ön koşullar

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

KodNe zaman reddedilir
table_group_not_foundGrup bulunmalı.
group_name_requiredGrubun bir adı olmalı.
group_name_takenİki grup aynı adı taşıyamaz.

Yayımladığı olaylar: data.table_group_renamed

Neye yazar: data_table_group (update) — Renames the group

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.rename_table_group", {
  id: "ID_ID"
})
era data rename_table_group \
  --id "ID_ID"
tools/call
{
  "name": "era__data__rename_table_group",
  "arguments": {
    "id": "ID_ID"
  }
}

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

data.set_display_field

Görünen değer yap — Bir alanı her kaydın adı yapar — bağlantı etiketlerinde, başlıklarda ve ilk sütunda.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetAlan · kimliği: data_column

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundAlan bulunmalı.
display_type_unsupportedSeçim, dosya, bağlantı veya hesaplanan bir alan bir kayda ad veremez.

Yayımladığı olaylar: data.column_changed

Neye yazar: data_column (update) — Moves the display flag to this field

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.set_display_field", {
  id: "DATA_COLUMN_ID"
})
era data set_display_field \
  --id "DATA_COLUMN_ID"
tools/call
{
  "name": "era__data__set_display_field",
  "arguments": {
    "id": "DATA_COLUMN_ID"
  }
}

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

data.set_field

Özel alanı doldur — Bir kayıttaki tek bir özel alanı, anahtarı veya etiketiyle bularak yazar; bir seçenek başlığıyla belirtilebilir.

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

POSThttps://app.getera.io/api/v1/actions/data.set_field
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
recordTypestringevetKayıt türü · en çok 60
recordIduuidevetKayıt
fieldstringevetAlan · en çok 200
valuestringDeğer · Boş bırakmak alanı temizler. Birden çok seçenek: "A, B". · en çok 5000

Ön koşullar

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

KodNe zaman reddedilir
field_not_foundBu kayıt türünde bu ada sahip bir alan bulunamadı.
option_not_availableSeçim, alanın sunduğu seçeneklerden biri olmalı.
extends_module_disabledKapalı bir modül yeni değer almaz.
required_field_missingZorunlu bir alan boş bırakılamaz.
type_mismatchDeğer, alanının türünde okunabilmeli.
readonly_fieldSalt okunur bir alana yazılamaz.
not_a_memberKişi alanı bu çalışma alanının bir üyesini göstermeli.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.

Yayımladığı olaylar: data.record_values_changed

Neye yazar: data_value (upsert) — Writes the value

curl -X POST https://app.getera.io/api/v1/actions/data.set_field \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"recordType":"Record type","recordId":"RECORD_ID","field":"Field"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.record_values_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.set_field", {
  recordType: "Record type",
  recordId: "RECORD_ID",
  field: "Field"
})
era data set_field \
  --record-type "Record type" \
  --record-id "RECORD_ID" \
  --field "Field"
tools/call
{
  "name": "era__data__set_field",
  "arguments": {
    "recordType": "Record type",
    "recordId": "RECORD_ID",
    "field": "Field"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 field_not_found, option_not_available, extends_module_disabled, required_field_missing, type_mismatch, readonly_field, not_a_member, invalid_field_format · 429 çok sık istek

data.set_record_values

Ek alanları doldur — Bir alan grubunun değerlerini başka bir modülün kaydına yazar.

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

POSThttps://app.getera.io/api/v1/actions/data.set_record_values
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetAlan grubu · kimliği: data_table
recordTypestringevetKayıt türü · en çok 60
recordIduuidevetKayıt
valuesobject / arrayevetDeğerler
completebooleanTüm form · Kayıt bütün olarak oluşturuluyor veya kaydediliyor: her zorunlu alan doldurulmalı (varsayılan değer de sayılır).

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundAlan grubu bulunmalı.
wrong_table_kindKendi satırları olan bir tablo değer değil, satır alır.
not_a_memberKişi alanı bu çalışma alanının bir üyesini göstermeli.
record_type_mismatchGrup o kayıt türüne ait olmalı.
extends_module_disabledKapalı bir modül yeni değer almaz.
unknown_fieldHer anahtar gruptaki bir alan olmalı.
required_field_missingZorunlu alanlar doldurulmalı.
type_mismatchDeğer, alanının türünde okunabilmeli.
readonly_fieldSalt okunur bir alana yazılamaz.
option_not_availableSeçim, alanın hâlâ sunduğu bir seçenek olmalı.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.

Yayımladığı olaylar: data.record_values_changed

Neye yazar: data_value (upsert) — Writes the values

curl -X POST https://app.getera.io/api/v1/actions/data.set_record_values \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"dataTableId":"DATA_TABLE_ID","recordType":"Record type","recordId":"RECORD_ID","values":{}}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.record_values_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.set_record_values", {
  dataTableId: "DATA_TABLE_ID",
  recordType: "Record type",
  recordId: "RECORD_ID",
  values: {}
})
era data set_record_values --data '{"dataTableId":"DATA_TABLE_ID","recordType":"Record type","recordId":"RECORD_ID","values":{}}'
tools/call
{
  "name": "era__data__set_record_values",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "recordType": "Record type",
    "recordId": "RECORD_ID",
    "values": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, not_a_member, record_type_mismatch, extends_module_disabled, unknown_field, required_field_missing, type_mismatch, readonly_field, option_not_available, invalid_field_format · 429 çok sık istek

data.set_row_policy

Kimin hangi satırları göreceğini daralt — Bir satır kuralını — koşulu ve uygulandığı herkesle — tek seferde yazar.

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

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

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
policyIduuidKural
namestringevetAd · en çok 120
permissionstring (enum)evetUygulandığı yer · İzin verilen değerler: read, write, delete
conditionsobject / arrayKoşul
subjectsobject / arrayevetKimin için
isActivebooleanAktif

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindAlan grubunun daraltılacak kendi satırları yoktur.
title_requiredBir düzenlemeyi reddeden kuralın adlandırılabilir olması gerekir.
policy_needs_subjectKimseye uygulanmayan bir kural tabloyu gizlerdi.
subject_not_foundKapsam gerçek bir rol veya çalışma alanı üyesi olmalı.
invalid_filterDerlenemeyen bir koşul kaydederken reddedilir.
unknown_fieldKoşul yalnızca tablodaki alanları belirtebilir.
policy_not_foundBir kuralı düzenlemek için kuralın bulunması gerekir.
name_takenBir tablodaki iki kural aynı adı paylaşamaz.

Yayımladığı olaylar: data.row_policy_changed

Neye yazar: data_table_policy (upsert) — Writes the rule; data_table_policy_subject (upsert) — Names who it is for

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.set_row_policy", {
  dataTableId: "DATA_TABLE_ID",
  name: "Name",
  permission: "read",
  subjects: {}
})
era data set_row_policy --data '{"dataTableId":"DATA_TABLE_ID","name":"Name","permission":"read","subjects":{}}'
tools/call
{
  "name": "era__data__set_row_policy",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "name": "Name",
    "permission": "read",
    "subjects": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:manage izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, title_required, policy_needs_subject, subject_not_found, invalid_filter, unknown_field, policy_not_found, name_taken · 429 çok sık istek

data.set_select_options

Seçenekleri düzenle — Bir seçim alanının seçenek listesini yeniden yazar; birinin seçtiği bir seçeneği silmeyi reddeder.

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

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

Girdi

AlanTürZorunluAçıklama
dataColumnIduuidevetAlan · kimliği: data_column
optionsobject / arrayevetSeçimler

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundAlan bulunmalı.
column_not_enumAlan seçenek sunan bir alan olmalı.
option_in_useKayıtların hâlâ seçtiği bir seçenek silinmez, kapatılır.

Yayımladığı olaylar: data.options_changed

Neye yazar: data_select_option (upsert) — Writes the option list

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.set_select_options", {
  dataColumnId: "DATA_COLUMN_ID",
  options: {}
})
era data set_select_options --data '{"dataColumnId":"DATA_COLUMN_ID","options":{}}'
tools/call
{
  "name": "era__data__set_select_options",
  "arguments": {
    "dataColumnId": "DATA_COLUMN_ID",
    "options": {}
  }
}

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

data.set_table_permission

Tabloyu kimin kullanabileceğini değiştir — Bir rol için bir tabloda bir izni verir veya kaldırır.

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

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

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
roleIduuidevetRol
permissionstring (enum)evetİzin · İzin verilen değerler: TABLE_RECORD_READ, TABLE_RECORD_ADD, TABLE_RECORD_UPDATE, TABLE_RECORD_DELETE, FIELD_EDIT
grantedbooleanevetVerildi

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
role_not_foundRol bulunmalı.
cannot_lock_out_ownerSahip erişimini korur; yoksa kimse bunu geri alamaz.

Yayımladığı olaylar: data.permission_changed

Neye yazar: data_table_permission (upsert) — Writes the permission; data_table_permission_subject (upsert) — Names the role it applies to

curl -X POST https://app.getera.io/api/v1/actions/data.set_table_permission \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"dataTableId":"DATA_TABLE_ID","roleId":"ROLE_ID","permission":"TABLE_RECORD_READ","granted":true}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.permission_changed"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.set_table_permission", {
  dataTableId: "DATA_TABLE_ID",
  roleId: "ROLE_ID",
  permission: "TABLE_RECORD_READ",
  granted: true
})
era data set_table_permission \
  --data-table-id "DATA_TABLE_ID" \
  --role-id "ROLE_ID" \
  --permission "TABLE_RECORD_READ" \
  --granted true
tools/call
{
  "name": "era__data__set_table_permission",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "roleId": "ROLE_ID",
    "permission": "TABLE_RECORD_READ",
    "granted": true
  }
}

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

Kayıtların bağını kaldır — Bu kayıttan bağlantıları kaldırır. Bağlı kayıtların kendisi kalır.

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

POSThttps://app.getera.io/api/v1/actions/data.unlink_records
API anahtarı ya da OAuth token · data:write
AlanTürZorunluAçıklama
columnIduuidevetBağlantı alanı · kimliği: data_column
rowIduuidevetKayıt · kimliği: data_row
targetRowIdsobject / arrayevetBağlantısı kaldırılacak kayıtlar

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

KodNe zaman reddedilir
column_not_foundBağlantı alanı bulunmalı.
not_a_link_fieldAlan başka bir tabloya bağlantı olmalı.
row_not_foundKayıt bu tabloda olmalı.
row_policy_deniesBir satır kuralı bir kaydı erişiminizin dışına çıkarabilir.
nothing_to_unlinkBu kayıtlardan en az biri buraya bağlı olmalı.

Yayımladığı olaylar: data.records_unlinked

Neye yazar: data_row_link (delete) — Removes the links

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.unlink_records", {
  columnId: "DATA_COLUMN_ID",
  rowId: "DATA_ROW_ID",
  targetRowIds: {}
})
era data unlink_records --data '{"columnId":"DATA_COLUMN_ID","rowId":"DATA_ROW_ID","targetRowIds":{}}'
tools/call
{
  "name": "era__data__unlink_records",
  "arguments": {
    "columnId": "DATA_COLUMN_ID",
    "rowId": "DATA_ROW_ID",
    "targetRowIds": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 column_not_found, not_a_link_field, row_not_found, row_policy_denies, nothing_to_unlink · 429 çok sık istek

data.update_column

Alanı düzenle — Alanın etiketini, yardım metnini, rengini, sırasını ve bayraklarını değiştirir.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetAlan · kimliği: data_column
titlestringEtiket · en çok 200
uiHintstringŞöyle gösterilir · en çok 30
unitstringBirim · en çok 30
isRequiredbooleanZorunlu
isFilterablebooleanFiltrelenebilir
isListablebooleanSütun olarak kullanılabilir
isPublicbooleanVitrinde görünür
helpTextstringYardım metni · en çok 255
descriptionstringAçıklama · en çok 2000
colorstringRenk · en çok 7
defaultValuestringVarsayılan · en çok 500
sortOrdernumberSipariş
displayobject / arrayNasıl görünür
validationobject / arrayDoğrulama
archivedbooleanArşivlendi · Formlarda, listelerde ve filtrelerde gizlenir; yanıtları saklanır.

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundAlan bulunmalı.
required_without_default_on_existing_rowsVar olan kayıtlarda bir alanı zorunlu yapmak bir varsayılan değer gerektirir.
invalid_display_optionGörünüm seçeneği alan türünde bulunmalı ve geçerli bir değeri olmalı.

Yayımladığı olaylar: data.column_changed

Neye yazar: data_column (update) — Edits the field

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.update_column", {
  id: "DATA_COLUMN_ID"
})
era data update_column \
  --id "DATA_COLUMN_ID"
tools/call
{
  "name": "era__data__update_column",
  "arguments": {
    "id": "DATA_COLUMN_ID"
  }
}

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

data.update_computed_field

Hesaplanan alanı düzenle — Bir formülü, bir özetin hesabını, bir arama alanının ya da kodun okuduğu alanı veya bir düğmenin ne yaptığını değiştirir.

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

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

Girdi

AlanTürZorunluAçıklama
iduuidevetAlan · kimliği: data_column
titlestringAd · en çok 200
formulastringFormül · en çok 2000
fnstring (enum)Özet · İzin verilen değerler: count, sum, avg, min, max, countDistinct, sumDistinct, avgDistinct
targetColumnIduuidBağlı tablonun alanı · kimliği: data_column
sourceColumnIduuidKodun taşıdığı alan · kimliği: data_column
buttonActionstring (enum)Tıklanınca · İzin verilen değerler: url, workflow
buttonUrlstringBağlantı · en çok 2000
buttonLabelstringDüğme yazısı · en çok 60
buttonColorstringDüğme rengi · en çok 7

Ön koşullar

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

KodNe zaman reddedilir
column_not_foundAlan bulunmalı.
not_a_computed_fieldKayıtlı bir alan sıradan alan düzenleyiciyle düzenlenir.
invalid_button_urlBağlantı düğmesinin açacağı bir web adresi olmalı.
invalid_formulaOkunamayan bir formül kaydederken reddedilir.
formula_cycleFormül sonunda kendini okuyamaz.

Yayımladığı olaylar: data.column_changed

Neye yazar: data_column (update) — Rewrites what the field computes

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.update_computed_field", {
  id: "DATA_COLUMN_ID"
})
era data update_computed_field \
  --id "DATA_COLUMN_ID"
tools/call
{
  "name": "era__data__update_computed_field",
  "arguments": {
    "id": "DATA_COLUMN_ID"
  }
}

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

data.update_row

Kaydı düzenle — Değerleri satıra ekler — belirtilmeyen alanlar olduğu gibi kalır.

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

POSThttps://app.getera.io/api/v1/actions/data.update_row
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
iduuidevetKayıt · kimliği: data_row
dataobject / arrayevetDeğerler

Ön koşullar

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

KodNe zaman reddedilir
row_not_foundKayıt bulunmalı.
unknown_fieldHer anahtar tablodaki bir alan olmalı.
type_mismatchDeğer, alanının türünde okunabilmeli.
not_a_memberKullanıcı alanı bu çalışma alanının üyelerinden birini tutar.
readonly_fieldSalt okunur bir alana yazılamaz.
required_field_missingZorunlu bir alan boş bırakılamaz.
row_policy_deniesBir satır kuralı bir kaydı erişiminizin dışına çıkarabilir.
invalid_filterKoşulu derlenemeyen bir satır kuralı atlanmaz, engeller.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.

Yayımladığı olaylar: data.row_updated

Neye yazar: data_row (update) — Merges the values in; a null clears the field

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.update_row", {
  id: "DATA_ROW_ID",
  data: {}
})
era data update_row --data '{"id":"DATA_ROW_ID","data":{}}'
tools/call
{
  "name": "era__data__update_row",
  "arguments": {
    "id": "DATA_ROW_ID",
    "data": {}
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 row_not_found, unknown_field, type_mismatch, not_a_member, readonly_field, required_field_missing, row_policy_denies, invalid_filter, invalid_field_format · 429 çok sık istek

data.update_rows

Birden çok kaydı düzenle — Seçilen veya filtrelenen kayıtlara aynı değerleri verir ya da bir hücre bloğunu yapıştırır — hepsi ya da hiçbiri.

Gereken izin data:write · dışarıya ulaşır (gönderir, yayımlar ya da ücret alır) · Era çalıştırırken bir kişiye onaylatır

POSThttps://app.getera.io/api/v1/actions/data.update_rows
API anahtarı ya da OAuth token · data:write

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
rowsobject / arrayKayda özel değerler
idsobject / arrayKayıtlar
conditionsobject / arrayFiltre
dataobject / arrayDeğerler

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindAlan grubunun kendi satırları yoktur.
nothing_to_updateDeğiştirilecek bir şey olmalı.
filter_matches_nothingSeçim veya filtre en az bir kayda ulaşmalı.
filter_too_broadToplu düzenleme bir seçim veya filtre gerektirir ve sınırlıdır.
row_not_foundYapıştırılan her kayıt bu tabloda olmalı.
row_policy_deniesDokunulan her kayıt, satır kurallarınızın düzenlemenize izin verdiği bir kayıt olmalı.
invalid_filterDerlenemeyen bir filtre reddedilir.
unknown_fieldHer anahtar tablodaki bir alan olmalı.
type_mismatchDeğer, alanının türünde okunabilmeli.
readonly_fieldSalt okunur veya hesaplanan bir alana yazılamaz.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.
not_a_memberKullanıcı alanı bu çalışma alanının üyelerinden birini tutar.

Yayımladığı olaylar: data.rows_updated

Neye yazar: data_row (update) — Merges the values into each record

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.update_rows", {
  dataTableId: "DATA_TABLE_ID"
})
era data update_rows \
  --data-table-id "DATA_TABLE_ID"
tools/call
{
  "name": "era__data__update_rows",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:write izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, nothing_to_update, filter_matches_nothing, filter_too_broad, row_not_found, row_policy_denies, invalid_filter, unknown_field, type_mismatch, readonly_field, invalid_field_format, not_a_member · 429 çok sık istek

data.upsert_row

Kayıt ekle veya güncelle — Eşleşme alanında bu değer olan kaydı günceller; yoksa yenisini ekler.

Gereken izin data:import · veriyi değiştirir

POSThttps://app.getera.io/api/v1/actions/data.upsert_row
API anahtarı ya da OAuth token · data:import

Girdi

AlanTürZorunluAçıklama
dataTableIduuidevetTablo · kimliği: data_table
matchKeystringevetEşleşme alanı · en çok 100
dataobject / arrayDeğerler
rowsobject / arrayKayıtlar

Ön koşullar

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

KodNe zaman reddedilir
table_not_foundTablo bulunmalı.
wrong_table_kindAlan grubunun kendi satırları yoktur.
no_match_keyEşleşme alanı kayıtlı bir alan olmalı ve dolu olmalı.
match_ambiguousTek bir değere iki kaydın karşılık gelmesi reddedilir, iki kez güncellenmez.
nothing_to_importToplu işlem boş olmamalı.
import_batch_too_largeToplu işlemin bir sınırı vardır; dosyayı istemci böler.
row_limit_reachedYeni kayıtlar tablonun sınırının altına sığmalı.
required_field_missingYeni kayıt zorunlu alanlarını doldurmalı.
row_policy_deniesGüncelleme, satır kurallarınızın düzenlemenize izin verdiği bir kayda olmalı.
unknown_fieldHer anahtar tablodaki bir alan olmalı.
type_mismatchDeğer, alanının türünde okunabilmeli.
readonly_fieldSalt okunur veya hesaplanan bir alana yazılamaz.
invalid_field_formatDoğrulama açıkken değer, alanın biçimine uymalı.
not_a_memberKullanıcı alanı bu çalışma alanının üyelerinden birini tutar.

Yayımladığı olaylar: data.row_created, data.row_updated, data.rows_imported

Neye yazar: data_row (upsert) — Adds the record, or merges into the one matched

curl -X POST https://app.getera.io/api/v1/actions/data.upsert_row \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"dataTableId":"DATA_TABLE_ID","matchKey":"Match on"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "data.row_created",
    "data.row_updated",
    "data.rows_imported"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("data.upsert_row", {
  dataTableId: "DATA_TABLE_ID",
  matchKey: "Match on"
})
era data upsert_row \
  --data-table-id "DATA_TABLE_ID" \
  --match-key "Match on"
tools/call
{
  "name": "era__data__upsert_row",
  "arguments": {
    "dataTableId": "DATA_TABLE_ID",
    "matchKey": "Match on"
  }
}

Hatalar: 401 kimlik bilgisi yok ya da süresi dolmuş · 403 kimlik bilgisinde data:import izni yok · 404 kayıt ya da modül erişim dışında · 422 geçersiz girdi (problems[]) · 409 table_not_found, wrong_table_kind, no_match_key, match_ambiguous, nothing_to_import, import_batch_too_large, row_limit_reached, required_field_missing, row_policy_denies, unknown_field, type_mismatch, readonly_field, invalid_field_format, not_a_member · 429 çok sık istek

Olaylar

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

OlayNe olurTaşıdığı alanlar
data.button_pressedBir kayıtta iş akışı düğmesine basıldı.id, dataTableId, columnId, button, pressedBy
data.column_addedBir alan tanımlandı.id, dataTableId, uiType
data.column_changedBir alan düzenlendi ya da türü değişti.id, uiType
data.column_removedBir alan silindi.id, dataTableId
data.options_changedBir seçenek listesi değişti.id
data.permission_changedBir tabloyu kimlerin kullanabileceği değişti.dataTableId, roleId
data.record_values_changedBaşka bir modülün kaydındaki ek alanlar yazıldı ya da temizlendi.dataTableId, recordType, recordId, written
data.records_linkedKayıtlar bir kayda bağlandı.columnId, rowId, count
data.records_unlinkedBir kayıttan bağlantılar kaldırıldı.columnId, rowId, count
data.relation_createdİki tablo bağlandı.id, kind, sourceTableId, targetTableId
data.row_createdBir kayıt eklendi.id, dataTableId
data.row_deletedBir kayıt silindi.id, dataTableId
data.row_policy_changedBirinin hangi satırları göreceğini daraltan bir kural yazıldı ya da kaldırıldı.dataTableId, policyId
data.row_updatedBir kayıt düzenlendi.id, dataTableId
data.rows_deletedBirkaç kayıt tek seferde silindi.dataTableId, count
data.rows_exportedKayıtlar platformdan dışa aktarıldı.dataTableId, count
data.rows_importedBir grup kayıt içe aktarıldı.dataTableId, count
data.rows_purgedBir tablonun kayıtları temizlendi.id, count
data.rows_updatedBirkaç kayıt tek seferde düzenlendi.dataTableId, count
data.table_createdBir tablo ya da alan grubu açıldı.id, kind, extendsModuleCode
data.table_deletedBir tablo silindi.id, code
data.table_duplicatedBir tablo kayıtlarıyla ya da kayıtsız kopyalandı.id, sourceId, rows
data.table_group_createdBir tablo grubu eklendi.id
data.table_group_deletedBir tablo grubu silindi; tabloları gruptan çıkarıldı.id
data.table_group_renamedBir tablo grubunun adı ya da yeri değişti.id
data.table_movedBir tablo bir gruba kondu ya da gruptan çıkarıldı.id, groupId
data.table_renamedBir tablo düzenlendi.id
Bu sayfa yardımcı oldu mu?