OpenAgentAGI

Хариу (Response)

Хариу (Response) блок нь workflow-ийн хамгийн сүүлийн алхам бөгөөд API дуудахад буцаах бүтэцтэй хариуг форматлаж илгээх зориулалттай. Энэ нь бүх workflow-ийн “return” statement-тэй адил ойлгогдоно — гарсан үр дүнг нэгтгээд буцаан илгээнэ.

Response Block Configuration

Хариу (Response) блокууд нь terminal block бөгөөд workflow-ийн гүйцэтгэлийг энд дуусгана. Өөр блок руу холбогдох боломжгүй.

Тойм (Overview)

Хариу (Response) блок нь дараах боломжуудыг олгодог:

API хариуг форматлах: Workflow-ийн үр дүнг стандарт HTTP response бүтэцтэй болгох

Status code тохируулах: Workflow-ийн үр дүнд тохирсон HTTP статус код сонгох

Header удирдах: API response болон webhook-д зориулсан custom header нэмэх

Өгөгдөл хувиргах: Workflow-ийн хувьсагчдыг клиентэд ойлгомжтой формат руу хөрвүүлэх

Хэрхэн ажилладаг вэ (How It Works)

Хариу (Response) блок нь workflow-ийн гүйцэтгэлийг дараах байдлаар дуусгана:

  1. Өгөгдөл цуглуулах – Өмнөх блокуудын variable болон output-уудыг авна
  2. Response форматлах – Тохиргоонд заасны дагуу өгөгдлийг бүтэцжүүлнэ
  3. HTTP тохиргоо хийх – Status code болон header-уудыг хэрэгжүүлнэ
  4. Response илгээх – Форматлагдсан хариуг API дуудлага хийсэн талд буцаана

Хариу (Response) блок хэрэгтэй нөхцөлүүд

  • API Endpoint: Workflow API-аар дуудагдах үед буцаах өгөгдлийг форматлах
  • Webhook: Дуудлага хийсэн систем рүү баталгаажуулалт эсвэл өгөгдөл буцаах
  • Тест хийх: Workflow-г турших үед форматлагдсан үр дүнг харах

Хариу (Response) үүсгэх хоёр арга

Builder Mode (Зөвлөмж болгож буй)

Response бүтцийг визуал байдлаар үүсгэх интерфэйс:

  • Field-үүдийг drag & drop хийх
  • Workflow variable-уудыг хялбар reference хийх
  • Response бүтцийн визуал preview харах

Editor Mode (Ахисан түвшин)

JSON-ийг гараар бичих:

  • Response формат дээр бүрэн хяналттай байх
  • Нарийн nested бүтэц дэмжих
  • Динамик утгад <variable.name> синтакс ашиглах

Тохиргооны сонголтууд (Configuration Options)

Хариу (Response) өгөгдөл

Response data нь API дуудлага хийсэн талд буцаах үндсэн агуулга юм. Энэ нь JSON форматтай байх бөгөөд дараахыг агуулж болно:

  • Статик утгууд
  • <variable.name> синтакс ашигласан динамик утгууд
  • Nested object болон array-ууд
  • Ямар ч хүчинтэй JSON бүтэц

Status Code

Response-д ашиглах HTTP статус кодыг тохируулна. Түгээмэл ашиглагддаг статус кодүүд:

  • 200: OK – Амжилттай стандарт response
  • 201: Created – Нөөц амжилттай үүссэн
  • 204: No Content – Амжилттай боловч response body байхгүй
  • 400: Bad Request – Буруу request параметр
  • 401: Unauthorized – Нэвтрэлт шаардлагатай
  • 404: Not Found – Нөөц олдсонгүй
  • 422: Unprocessable Entity – Validation алдаа
  • 500: Internal Server Error – Серверийн дотоод алдаа
  • 502: Bad Gateway – Гадаад сервисийн алдаа
  • 503: Service Unavailable – Сервис түр хугацаанд ажиллахгүй

Хэрэв заагаагүй бол анхдагч status code нь 200 байна.

Response Headers

Response-д нэмэлт HTTP header-уудыг тохируулж өгч болно.

Header-ууд нь key-value хосоор тодорхойлогдоно:

KeyValue
Content-Typeapplication/json
Cache-Controlno-cache
X-API-Version1.0

Ашиглах жишээ (Example Use Cases)

API Endpoint-ийн response

Жишээ: Хайлтын API-аас бүтэцтэй өгөгдөл буцаах

  1. Workflow хайлтын query-г боловсруулж үр дүн авна
  2. Function блок үр дүнг форматлаж, pagination хийнэ
  3. Response блок JSON өгөгдөл, pagination, metadata буцаана
  4. Клиент 200 статус бүхий response авна

Webhook баталгаажуулалт

Жишээ: Webhook хүлээн авсныг баталгаажуулах

  1. Webhook trigger гадаад системээс өгөгдөл авна
  2. Workflow өгөгдлийг боловсруулна
  3. Response блок боловсруулалтын статус бүхий баталгаажуулалт буцаана
  4. Гадаад систем баталгаажуулалт хүлээн авна

Алдааны response боловсруулах

Жишээ: Зөв алдааны response буцаах

  1. Condition блок validation эсвэл системийн алдаа илрүүлнэ
  2. Router алдааны зам руу чиглүүлнэ
  3. Response блок 400/500 статус болон алдааны мэдээлэл буцаана
  4. Клиент бүтэцтэй алдааны мэдээлэл авна

Inputs ба Outputs

  • Response Data: Response body-д ашиглах JSON бүтэц

  • Status Code: HTTP статус код (анхдагч: 200)

  • Headers: Custom HTTP header-ууд

  • Mode: Builder эсвэл Editor горим

  • response.data: Бүтэцтэй response body

  • response.status: Илгээгдсэн HTTP статус код

  • response.headers: Response-д багтсан header-ууд

  • response.success: Амжилттай дууссан эсэх boolean утга

  • HTTP Response: API дуудлага хийсэн талд илгээгдсэн бүрэн response

  • Workflow дуусгалт: Workflow-ийн гүйцэтгэлийг бүрэн зогсооно

  • Хандалт: Response блокийн дараа өөр блок ажиллахгүй

Variable reference ашиглах

Workflow-ийн variable-уудыг response-д динамикаар оруулахдаа <variable.name> синтаксыг ашиглана:

{
  "user": {
    "id": "<variable.userId>",
    "name": "<variable.userName>",
    "email": "<variable.userEmail>"
  },
  "query": "<variable.searchQuery>",
  "results": "<variable.searchResults>",
  "totalFound": "<variable.resultCount>",
  "processingTime": "<variable.executionTime>ms"
}
Variable нэрүүд нь том, жижиг үсэгт мэдрэмтгий бөгөөд workflow-д байгаа нэртэйгээ яг таарах ёстой.

Шилдэг туршлагууд (Best Practices)

Зөв status code ашиглах: Workflow-ийн үр дүнг үнэн зөв илэрхийлэх HTTP статус код сонго

Response бүтэц тогтвортой байлгах: Бүх API endpoint-ууд дээр ижил JSON бүтэц баримтлах

Нэмэлт metadata оруулах: Timestamp, version зэрэг мэдээлэл нь debugging, monitoring-д тустай

Алдааг зохистой боловсруулах: Conditional logic ашиглан ойлгомжтой алдааны response буцаах

Variable reference шалгах: Ашигласан бүх variable оршин байгаа эсэх, зөв төрлийн өгөгдөл агуулж буйг баталгаажуулах

Хариу (Response)