Belge talepleri API

Belge talepleri modülünün tüm işlemleri (7) ve veri modelleri (3): adresler, izinler, girdiler, ön koşullar, olaylar ve örnekler.

Bir potansiyel müşteriden bağlantıyla belge isteyin — giriş yapması gerekmez.

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

Kaynaklar

KaynakTabloListeleme ve okumaPOSTPATCHDELETE
lead_document_linkslead_document_link/api/v1/lead_document_links
lead_document_requestslead_document_request/api/v1/lead_document_requests
lead_documentslead_document/api/v1/lead_documents

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
lead_documents.issue_linklead_documents:writePotansiyel müşteriden belge iste
lead_documents.renew_linklead_documents:writeBelge bağlantısının süresini uzat
lead_documents.reviewlead_documents:writeBelgeyi kabul et veya reddet
lead_documents.revoke_linklead_documents:writePotansiyel müşterinin belge bağlantısını kapat
lead_documents.set_requestlead_documents:manageBelge talebi ekle veya değiştir
lead_documents.set_request_activelead_documents:manageBelge talebini aç veya kapat
lead_documents.submitlead_documents:writePotansiyel müşterinin gönderdiği belgeyi kaydet

Potansiyel müşteriden belge iste — Tek bir potansiyel müşteri için bir dosya yükleme bağlantısı açar ve istenen belgelere bağlar.

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

POSThttps://app.getera.io/api/v1/lead_document_links/actions/issue_link
API anahtarı ya da OAuth token · lead_documents:write
  • Asıl adres: POST /api/v1/actions/lead_documents.issue_link
AlanTürZorunluAçıklama
leadIduuidevetPotansiyel müşteri · kimliği: lead
fileUploadLinkIduuidYükleme bağlantısı · Boş bırakılırsa bağlantı burada açılır. · kimliği: file_upload_link
requestIdsobject / arrayBelgeler
expiresInDaysnumberAçık kalma süresi (gün) · en az 1 · en çok 90

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

KodNe zaman reddedilir
lead_not_foundPotansiyel müşteri bulunmalı.
lead_archivedArşivlenmiş bir potansiyel müşteriden hiçbir şey istenmez.
no_requestsEn az bir açık belge talebi bulunmalı veya seçilmeli.
request_not_availableSeçilen her talep açık olmalı.
upload_link_not_openDosya yükleme bağlantısı bulunmalı ve açık olmalı.
upload_link_takenBir yükleme bağlantısı tek bir potansiyel müşteriye hizmet eder.

Yayımladığı olaylar: lead_documents.link_issued

Neye yazar: lead_document_link (insert) — Ties the link to the lead and retires the previous one

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.leadDocumentLinks.issueLink({
  leadId: "LEAD_ID"
})
era lead_document_links issue_link \
  --lead-id "LEAD_ID"
tools/call
{
  "name": "era__lead_documents__issue_link",
  "arguments": {
    "leadId": "LEAD_ID"
  }
}

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

Belge bağlantısının süresini uzat — Potansiyel müşteriye gönderilen bağlantının süresini, elindeki adresi koruyarak uzatır.

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

POSThttps://app.getera.io/api/v1/actions/lead_documents.renew_link
API anahtarı ya da OAuth token · lead_documents:write
AlanTürZorunluAçıklama
leadIduuidevetPotansiyel müşteri · kimliği: lead
daysnumberevetAçık kalma süresi (bugünden itibaren gün) · en az 1 · en çok 90

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

KodNe zaman reddedilir
lead_not_foundPotansiyel müşteri bulunmalı.
lead_archivedArşivlenmiş bir potansiyel müşteri önce geri yüklenir.
no_open_linkPotansiyel müşterinin açık bir belge bağlantısı olmalı.

Yayımladığı olaylar: lead_documents.link_renewed

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.actions.run("lead_documents.renew_link", {
  leadId: "LEAD_ID",
  days: 1
})
era run lead_documents.renew_link \
  --lead-id "LEAD_ID" \
  --days 1
tools/call
{
  "name": "era__lead_documents__renew_link",
  "arguments": {
    "leadId": "LEAD_ID",
    "days": 1
  }
}

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

lead_documents.review

Belgeyi kabul et veya reddet — Gönderilen hakkında bir karar kaydeder; ret, kişiye nedenini bildirir.

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

POSThttps://app.getera.io/api/v1/lead_documents/{id}/actions/review
API anahtarı ya da OAuth token · lead_documents:write
  • Asıl adres: POST /api/v1/actions/lead_documents.review

Girdi

AlanTürZorunluAçıklama
iduuidevetDoldurulduğu yer: adresteki {id} · Belge · kimliği: lead_document
decisionstring (enum)evetKarar · İzin verilen değerler: accepted, rejected
reasonstringNeden · en çok 2000

Ön koşullar

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

KodNe zaman reddedilir
not_foundBelge bulunmalı.
already_in_that_stateKarar bir şeyi değiştirmeli.
reason_requiredRet, kişiye gösterilen nedeni taşır.

Yayımladığı olaylar: lead_documents.reviewed

Neye yazar: lead_document (update) — Records the decision

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.leadDocuments.review("LEAD_DOCUMENT_ID", {
  decision: "accepted"
})
era lead_documents review LEAD_DOCUMENT_ID \
  --decision "accepted"
tools/call
{
  "name": "era__lead_documents__review",
  "arguments": {
    "id": "LEAD_DOCUMENT_ID",
    "decision": "accepted"
  }
}

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

Potansiyel müşterinin belge bağlantısını kapat — Potansiyel müşteriye gönderilen bağlantıyı çalışmaz hâle getirir. Gönderdikleri kalır.

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

POSThttps://app.getera.io/api/v1/lead_document_links/actions/revoke_link
API anahtarı ya da OAuth token · lead_documents:write
  • Asıl adres: POST /api/v1/actions/lead_documents.revoke_link
AlanTürZorunluAçıklama
leadIduuidevetPotansiyel müşteri · kimliği: lead

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

KodNe zaman reddedilir
lead_not_foundPotansiyel müşteri bulunmalı.
lead_archivedArşivlenmiş bir potansiyel müşteri önce geri yüklenir.
no_open_linkPotansiyel müşterinin açık bir belge bağlantısı olmalı.

Yayımladığı olaylar: lead_documents.link_revoked

Neye yazar: lead_document_link (update) — Retires the join; files closes the link

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.leadDocumentLinks.revokeLink({
  leadId: "LEAD_ID"
})
era lead_document_links revoke_link \
  --lead-id "LEAD_ID"
tools/call
{
  "name": "era__lead_documents__revoke_link",
  "arguments": {
    "leadId": "LEAD_ID"
  }
}

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

lead_documents.set_request

Belge talebi ekle veya değiştir — İşletmenin bir potansiyel müşteriden ne istediği — pasaport, diploma — ve hangi dosyaları kabul ettiği.

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

POSThttps://app.getera.io/api/v1/lead_document_requests/{id}/actions/set_request
API anahtarı ya da OAuth token · lead_documents:manage
  • Asıl adres: POST /api/v1/actions/lead_documents.set_request

Girdi

AlanTürZorunluAçıklama
iduuidDoldurulduğu yer: adresteki {id} · Talep · kimliği: lead_document_request
namestringevetAd · en çok 255
descriptionstringTalimatlar · en çok 2000
isRequiredbooleanZorunlu
sortOrdernumberSipariş · en az 0
allowedTypesobject / arrayKabul edilen dosyalar
maxFileSizeMbnumberEn büyük dosya (MB) · en az 1 · en çok 50

Ön koşullar

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

KodNe zaman reddedilir
not_foundDeğiştirilen talep bulunmalı.
name_takenİki talep aynı adı paylaşamaz.

Yayımladığı olaylar: lead_documents.request_changed

Neye yazar: lead_document_request (upsert) — Writes the request

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.leadDocumentRequests.setRequest("LEAD_DOCUMENT_REQUEST_ID", {
  name: "Name"
})
era lead_document_requests set_request LEAD_DOCUMENT_REQUEST_ID \
  --name "Name"
tools/call
{
  "name": "era__lead_documents__set_request",
  "arguments": {
    "id": "LEAD_DOCUMENT_REQUEST_ID",
    "name": "Name"
  }
}

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

lead_documents.set_request_active

Belge talebini aç veya kapat — Gönderilmiş olanlara dokunmadan bir belgeyi istemeyi bırakır.

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

POSThttps://app.getera.io/api/v1/lead_document_requests/{id}/actions/set_request_active
API anahtarı ya da OAuth token · lead_documents:manage
  • Asıl adres: POST /api/v1/actions/lead_documents.set_request_active

Girdi

AlanTürZorunluAçıklama
iduuidevetDoldurulduğu yer: adresteki {id} · Talep · kimliği: lead_document_request
activebooleanevetAç

Ön koşullar

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

KodNe zaman reddedilir
not_foundTalep bulunmalı.
already_in_that_stateZaten açık ya da zaten kapalı.

Yayımladığı olaylar: lead_documents.request_changed

Neye yazar: lead_document_request (update) — Opens or closes it

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

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.leadDocumentRequests.setRequestActive("LEAD_DOCUMENT_REQUEST_ID", {
  active: true
})
era lead_document_requests set_request_active LEAD_DOCUMENT_REQUEST_ID \
  --active true
tools/call
{
  "name": "era__lead_documents__set_request_active",
  "arguments": {
    "id": "LEAD_DOCUMENT_REQUEST_ID",
    "active": true
  }
}

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

lead_documents.submit

Potansiyel müşterinin gönderdiği belgeyi kaydet — Yüklenen dosyayı, gönderildiği belgeye karşılık potansiyel müşteriye ekler.

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

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

Girdi

AlanTürZorunluAçıklama
tokenstringevetBağlantı anahtarı · en çok 128
requestIduuidevetBelge · kimliği: lead_document_request
fileIduuidevetDosya · kimliği: file
uploaderNamestringGönderen · en çok 200
uploaderNotestringNot · en çok 2000

Ön koşullar

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

KodNe zaman reddedilir
link_unknownBağlantı bulunmalı ve açık olmalı.
link_expiredBağlantının süresi dolmamış olmalı.
request_not_on_linkBağlantı bu belgeyi istiyor olmalı.
file_not_foundDosya bu bağlantıdan gelmiş ve henüz kaydedilmemiş olmalı.

Yayımladığı olaylar: lead_documents.submitted

Neye yazar: lead_document (insert) — Files the document; lead_document_link (update) — Stamps when the link was last used

curl -X POST https://app.getera.io/api/v1/lead_documents/actions/submit \
  -H "Authorization: Bearer $ERA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"token":"Link token","requestId":"LEAD_DOCUMENT_REQUEST_ID","fileId":"FILE_ID"}'
Yanıt
{
  "ok": true,
  "result": "…",
  "events": [
    "lead_documents.submitted"
  ]
}
import { createEra } from "@getera/sdk"

const era = createEra({ apiKey: process.env.ERA_API_KEY })
const res = await era.leadDocuments.submit({
  token: "Link token",
  requestId: "LEAD_DOCUMENT_REQUEST_ID",
  fileId: "FILE_ID"
})
era lead_documents submit \
  --token "Link token" \
  --request-id "LEAD_DOCUMENT_REQUEST_ID" \
  --file-id "FILE_ID"
tools/call
{
  "name": "era__lead_documents__submit",
  "arguments": {
    "token": "Link token",
    "requestId": "LEAD_DOCUMENT_REQUEST_ID",
    "fileId": "FILE_ID"
  }
}

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

Veri modelleri

Tablo lead_document_link · Kaynak lead_document_links

  • GET /api/v1/lead_document_links
  • GET /api/v1/lead_document_links/{id}
SütunTürBoş olabilirİzin verilen değerlerBağlı olduğu tablo
idstring (uuid) · uuid
organization_idstring (uuid) · uuidorganization
workspace_idstring (uuid) · uuidworkspace
lead_idstring (uuid) · uuidlead
is_activeboolean · bool
expires_atstring (date-time) · timestamptzevet
created_by_user_idstring (uuid) · uuidevetapp_user
created_atstring (date-time) · timestamptz
request_idsstring[] · uuid[]
last_used_atstring (date-time) · timestamptzevet
updated_atstring (date-time) · timestamptz
file_upload_link_idstring (uuid) · uuidevetfile_upload_link

Birincil anahtar: id

LeadDocumentRequest

Tablo lead_document_request · Kaynak lead_document_requests

  • GET /api/v1/lead_document_requests
  • GET /api/v1/lead_document_requests/{id}
SütunTürBoş olabilirİzin verilen değerlerBağlı olduğu tablo
idstring (uuid) · uuid
organization_idstring (uuid) · uuidorganization
workspace_idstring (uuid) · uuidworkspace
namestring · text
descriptionstring · textevet
is_requiredboolean · bool
sort_orderinteger · int4
allowed_typesstring[] · text[]
max_file_size_mbinteger · int4
is_activeboolean · bool
created_atstring (date-time) · timestamptz
updated_atstring (date-time) · timestamptz

Birincil anahtar: id

Denetimler:

  • CHECK ((max_file_size_mb > 0))

LeadDocument

Tablo lead_document · Kaynak lead_documents

  • GET /api/v1/lead_documents
  • GET /api/v1/lead_documents/{id}
SütunTürBoş olabilirİzin verilen değerlerBağlı olduğu tablo
idstring (uuid) · uuid
organization_idstring (uuid) · uuidorganization
workspace_idstring (uuid) · uuidworkspace
lead_idstring (uuid) · uuidlead
document_request_idstring (uuid) · uuidevetlead_document_request
link_idstring (uuid) · uuidevetlead_document_link
file_idstring (uuid) · uuidfile
uploader_namestring · textevet
uploader_notestring · textevet
uploaded_atstring (date-time) · timestamptz
statusstring · textreceived, accepted, rejected
reviewed_by_user_idstring (uuid) · uuidevetapp_user
reviewed_atstring (date-time) · timestamptzevet
rejection_reasonstring · textevet
updated_atstring (date-time) · timestamptz

Birincil anahtar: id

Olaylar

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

OlayNe olurTaşıdığı alanlar
lead_documents.link_issuedBir potansiyel müşteriden yükleme bağlantısıyla belge istendi.id, leadId, fileUploadLinkId, requestIds
lead_documents.link_renewedBir potansiyel müşterinin belge bağlantısının süresi uzatıldı.id, leadId, expiresAt
lead_documents.link_revokedBir potansiyel müşterinin belge bağlantısı kapatıldı.id, leadId
lead_documents.request_changedİşletmenin istediği belgeler değişti.id
lead_documents.reviewedGönderilen bir belge kabul ya da reddedildi.id, leadId, decision
lead_documents.submittedBir potansiyel müşteri bir belge gönderdi.id, leadId, requestId, fileId, person, document, fileName, ownerUserId
Bu sayfa yardımcı oldu mu?