{
  "openapi": "3.1.0",
  "info": {
    "title": "Legal Follow Service",
    "version": "d60e27bb53d3",
    "summary": "DgCore platform API surface for the Legal Follow Service domain.",
    "description": "The Legal Follow Service domain: 84 operations across 11 resource groups.\n\nThis is the published contract, not a description of a running deployment: the environment\nyou were granted may carry operations this document does not, and may not carry every\noperation listed here."
  },
  "servers": [
    {
      "url": "https://{gateway}/legal-follow-service",
      "description": "The full route is `https://<gateway>/legal-follow-service/<path>`. The service segment is fixed; the gateway host is the one you were granted. Substitute it below.",
      "variables": {
        "gateway": {
          "default": "gateway.example"
        }
      }
    }
  ],
  "tags": [
    {
      "name": "batch-catalog",
      "description": "Operations addressed under `/batch-catalog` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "compensating-transactions",
      "description": "Operations addressed under `/compensating-transactions` — 2 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "customer-follow-notifications",
      "description": "Operations addressed under `/customer-follow-notifications` — 7 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "customer-follows",
      "description": "Operations addressed under `/customer-follows` — 13 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "customer-follows-with-debts",
      "description": "Operations addressed under `/customer-follows-with-debts` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "data-migrations",
      "description": "Operations addressed under `/data-migrations` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "extended-properties",
      "description": "Operations addressed under `/extended-properties` — 3 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "follow-types",
      "description": "Operations addressed under `/follow-types` — 14 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "localizations",
      "description": "Operations addressed under `/localizations` — 10 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "parameters",
      "description": "Operations addressed under `/parameters` — 21 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "provisions",
      "description": "Operations addressed under `/provisions` — 11 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    }
  ],
  "paths": {
    "/batch-catalog": {
      "post": {
        "operationId": "legal-follow-batch-catalog",
        "tags": [
          "batch-catalog"
        ],
        "summary": "legal-follow-batch-catalog",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "sequenceNumber": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "sequenceNumber"
                  },
                  "serviceCode": {
                    "type": "string",
                    "x-aura-field-code": "serviceCode"
                  },
                  "variables": {
                    "type": "object",
                    "x-aura-field-code": "variables"
                  }
                },
                "required": [
                  "sequenceNumber",
                  "serviceCode",
                  "variables"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-batch-catalog",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "batch-catalog",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route declares `IEnumerable<object>`. `object` is the C# base type, so the code states that a body is returned and declines to say what is in it — the shape is chosen at runtime, and the body is a JSON array whose elements need not share a shape. That is the declaration, not a failure to read it, and nothing here narrows it.",
          "declared_type": "IEnumerable<object>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "object"
        }
      }
    },
    "/compensating-transactions/commit": {
      "post": {
        "operationId": "legal-follow-commit-compensating-transaction",
        "tags": [
          "compensating-transactions"
        ],
        "summary": "legal-follow-commit-compensating-transaction",
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-commit-compensating-transaction",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "compensating-transactions/commit",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/compensating-transactions/rollback": {
      "post": {
        "operationId": "legal-follow-rollback-compensating-transaction",
        "tags": [
          "compensating-transactions"
        ],
        "summary": "legal-follow-rollback-compensating-transaction",
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-rollback-compensating-transaction",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "compensating-transactions/rollback",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/customer-follow-notifications": {
      "get": {
        "operationId": "get-customer-follow-notification-list",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "get-customer-follow-notification-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "customerFollowId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowId"
                      },
                      "followTypeNotificationId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "followTypeNotificationId"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowNotificationId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-notification-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowNotificationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowNotificationDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeNotificationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "create-customer-follow-notification",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "create-customer-follow-notification",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerFollowId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerFollowId"
                  },
                  "followTypeNotificationId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeNotificationId"
                  }
                },
                "required": [
                  "customerFollowId",
                  "followTypeNotificationId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-customer-follow-notification",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "CustomerFollowId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeNotificationId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_8",
              "status": 400,
              "message": {
                "ar": "نوع المتابعة - لا يمكن العثور على المعلومات. الإشعار: {0}",
                "en": "Follow Type - information cannot be found. Notification:{0}",
                "tr": "Takip Türü - bilgi bulunamıyor. Bildirim :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOTIFICATION_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follow-notifications/{id}": {
      "put": {
        "operationId": "update-customer-follow-notification",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "update-customer-follow-notification",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowNotificationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerFollowId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerFollowId"
                  },
                  "followTypeNotificationId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeNotificationId"
                  }
                },
                "required": [
                  "customerFollowId",
                  "followTypeNotificationId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow-notification",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeNotificationId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_20",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على إشعار متابعة العميل. المعرف: {0}",
                "en": "Customer follow notification is not found. Id:{0}",
                "tr": "Müşteri takip bildirimi bulunamadı. Id:{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOTIFICATION_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_8",
              "status": 400,
              "message": {
                "ar": "نوع المتابعة - لا يمكن العثور على المعلومات. الإشعار: {0}",
                "en": "Follow Type - information cannot be found. Notification:{0}",
                "tr": "Takip Türü - bilgi bulunamıyor. Bildirim :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOTIFICATION_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follow-notifications/{id}/call-notifications": {
      "get": {
        "operationId": "get-customer-follow-notification-call-list",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "get-customer-follow-notification-call-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowNotificationId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "callDate": {
                        "type": "string",
                        "format": "date-time",
                        "x-aura-field-code": "callDate"
                      },
                      "callId": {
                        "type": "string",
                        "x-aura-field-code": "callId"
                      },
                      "callid": {
                        "type": "string",
                        "x-aura-field-code": "callid"
                      },
                      "customerFollowNotificationId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowNotificationId"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "customerFollowCallDescription"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "notificationId"
                      },
                      "isPromisedPayment": {
                        "type": "boolean",
                        "x-aura-field-code": "isPromisedPayment"
                      },
                      "isReached": {
                        "type": "boolean",
                        "x-aura-field-code": "isReached"
                      },
                      "promisedPaymentDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "promisedPaymentDate"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-notification-call-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications/{id}/call-notifications",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowNotificationCallDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowNotificationCallDto",
          "collection": true,
          "members": [
            {
              "name": "IsReached",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsPromisedPayment",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Callid",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CallDate",
              "declared_type": "DateTime?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "PromisedPaymentDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "CustomerFollowNotificationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_20",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على إشعار متابعة العميل. المعرف: {0}",
                "en": "Customer follow notification is not found. Id:{0}",
                "tr": "Müşteri takip bildirimi bulunamadı. Id:{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOTIFICATION_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-customer-follow-notification-call",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "create-customer-follow-notification-call",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowNotificationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "callDate": {
                    "type": "string",
                    "format": "date-time",
                    "x-aura-field-code": "callDate"
                  },
                  "callId": {
                    "type": "string",
                    "x-aura-field-code": "callId"
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "description"
                  },
                  "isPromisedPayment": {
                    "type": "boolean",
                    "x-aura-field-code": "isPromisedPayment"
                  },
                  "isReached": {
                    "type": "boolean",
                    "x-aura-field-code": "isReached"
                  },
                  "promisedPaymentDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "promisedPaymentDate"
                  }
                },
                "required": [
                  "callDate",
                  "callId",
                  "description",
                  "isPromisedPayment",
                  "isReached"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 6,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-customer-follow-notification-call",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications/{id}/call-notifications",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsReached",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsPromisedPayment",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CallId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CallDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PromisedPaymentDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_12",
              "status": 400,
              "message": {
                "ar": "تم تسجيل إشعار لهذا المعرف الاتصال من قبل. مكالمة:{0}",
                "en": "A notification has been registered for this callid before. Call:{0}",
                "tr": "Bu çağrı için daha önce bir bildirim kaydedildi. Çağrı :{0}"
              },
              "message_available": true,
              "constant_name": "CALL_ID_ALREADY_REGISTERED"
            },
            {
              "code": "ERR_LGLFLLW_20",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على إشعار متابعة العميل. المعرف: {0}",
                "en": "Customer follow notification is not found. Id:{0}",
                "tr": "Müşteri takip bildirimi bulunamadı. Id:{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOTIFICATION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follow-notifications/{id}/sms-notifications": {
      "get": {
        "operationId": "get-customer-follow-notification-sms-list",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "get-customer-follow-notification-sms-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowNotificationId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "customerFollowNotificationId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowNotificationId"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "notificationId"
                      },
                      "notificationDate": {
                        "type": "string",
                        "format": "date-time",
                        "x-aura-field-code": "notificationDate"
                      },
                      "smsNotificationId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "smsNotificationId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-notification-sms-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications/{id}/sms-notifications",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowNotificationSmsDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowNotificationSmsDto",
          "collection": true,
          "members": [
            {
              "name": "SmsNotificationId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "NotificationDate",
              "declared_type": "DateTime?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "CustomerFollowNotificationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_20",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على إشعار متابعة العميل. المعرف: {0}",
                "en": "Customer follow notification is not found. Id:{0}",
                "tr": "Müşteri takip bildirimi bulunamadı. Id:{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOTIFICATION_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-customer-follow-notification-sms",
        "tags": [
          "customer-follow-notifications"
        ],
        "summary": "create-customer-follow-notification-sms",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowNotificationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "notificationDate": {
                    "type": "string",
                    "format": "date-time",
                    "x-aura-field-code": "notificationDate"
                  },
                  "smsNotificationId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "smsNotificationId"
                  }
                },
                "required": [
                  "notificationDate",
                  "smsNotificationId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-customer-follow-notification-sms",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follow-notifications/{id}/sms-notifications",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "SmsNotificationId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "NotificationDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_20",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على إشعار متابعة العميل. المعرف: {0}",
                "en": "Customer follow notification is not found. Id:{0}",
                "tr": "Müşteri takip bildirimi bulunamadı. Id:{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOTIFICATION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows": {
      "get": {
        "operationId": "get-customer-follow-list",
        "tags": [
          "customer-follows"
        ],
        "summary": "get-customer-follow-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "customerFollowDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "customerFollowDate"
                      },
                      "customerId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerId"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "customerFollowDescription"
                      },
                      "followTypeId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "followTypeId"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowId"
                      },
                      "status": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "status"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowDto",
          "collection": true,
          "members": [
            {
              "name": "CustomerId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "create-customer-follow",
        "tags": [
          "customer-follows"
        ],
        "summary": "create-customer-follow",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerFollowDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "customerFollowDate"
                  },
                  "customerId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerId"
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "description"
                  },
                  "followTypeId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeId"
                  }
                },
                "required": [
                  "customerFollowDate",
                  "customerId",
                  "description",
                  "followTypeId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-customer-follow",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "CustomerId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows-with-debts": {
      "get": {
        "operationId": "get-customer-follow-with-debt-list",
        "tags": [
          "customer-follows-with-debts"
        ],
        "summary": "get-customer-follow-with-debt-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accountingEntryId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accountingEntryId"
                      },
                      "accountingStatus": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accountingStatus"
                      },
                      "customerFollowId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowId"
                      },
                      "customerId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerId"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "description"
                      },
                      "expenseId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "expenseId"
                      },
                      "firstUnpaidInstallmentDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "firstUnpaidInstallmentDate"
                      },
                      "followTypeId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "followTypeId"
                      },
                      "followUpCloseDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "followUpCloseDate"
                      },
                      "followUpDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "followUpDate"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowDebtId"
                      },
                      "loanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "loanId"
                      },
                      "parentCustomerFollowDebtId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "parentCustomerFollowDebtId"
                      },
                      "status": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "status"
                      },
                      "whichLoanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "whichLoanId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-with-debt-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows-with-debts",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowDebtWithCustomerDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowDebtWithCustomerDto",
          "collection": true,
          "members": [
            {
              "name": "CustomerId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/customer-follows/debts": {
      "get": {
        "operationId": "get-customer-follow-debt-list",
        "tags": [
          "customer-follows"
        ],
        "summary": "get-customer-follow-debt-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accountingEntryId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accountingEntryId"
                      },
                      "accountingStatus": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accountingStatus"
                      },
                      "customerFollowId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowId"
                      },
                      "customerId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerId"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "description"
                      },
                      "expenseId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "expenseId"
                      },
                      "firstUnpaidInstallmentDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "firstUnpaidInstallmentDate"
                      },
                      "followTypeId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "followTypeId"
                      },
                      "followUpCloseDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "followUpCloseDate"
                      },
                      "followUpDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "followUpDate"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowDebtId"
                      },
                      "loanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "loanId"
                      },
                      "parentCustomerFollowDebtId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "parentCustomerFollowDebtId"
                      },
                      "status": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "status"
                      },
                      "whichLoanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "whichLoanId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-debt-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/debts",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowDebtWithCustomerDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowDebtWithCustomerDto",
          "collection": true,
          "members": [
            {
              "name": "CustomerId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/customer-follows/{id}": {
      "delete": {
        "operationId": "delete-customer-follow",
        "tags": [
          "customer-follows"
        ],
        "summary": "delete-customer-follow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "delete-customer-follow",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-customer-follow",
        "tags": [
          "customer-follows"
        ],
        "summary": "update-customer-follow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "loanFollowTypeId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerFollowDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "customerFollowDate"
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "followTypeDescription"
                  },
                  "followTypeId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeId"
                  }
                },
                "required": [
                  "customerFollowDate",
                  "description",
                  "followTypeId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/debts": {
      "get": {
        "operationId": "get-customer-follow-debt-by-id",
        "tags": [
          "customer-follows"
        ],
        "summary": "get-customer-follow-debt-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accountingEntryId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accountingEntryId"
                      },
                      "accountingStatus": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accountingStatus"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "description"
                      },
                      "expenseId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "expenseId"
                      },
                      "firstUnpaidInstallmentDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "firstUnpaidInstallmentDate"
                      },
                      "followTypeId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "followTypeId"
                      },
                      "followTypeStatus": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "followTypeStatus"
                      },
                      "followUpCloseDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "followUpCloseDate"
                      },
                      "followUpDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "followUpDate"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowDebtId"
                      },
                      "loanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "loanId"
                      },
                      "parentCustomerFollowDebtId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "parentCustomerFollowDebtId"
                      },
                      "status": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "status"
                      },
                      "whichLoanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "whichLoanId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-customer-follow-debt-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts",
        "x-aura-capabilities": {
          "filtering": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CustomerFollowDebtDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CustomerFollowDebtDto",
          "collection": true,
          "members": [
            {
              "name": "FollowTypeId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LoanId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ExpenseId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "FirstUnpaidInstallmentDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "FollowUpDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "WhichLoanId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingStatus",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Amount",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "FollowUpCloseDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ParentCustomerFollowDebtId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-customer-follow-debt",
        "tags": [
          "customer-follows"
        ],
        "summary": "create-customer-follow-debt",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingEntryId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accountingEntryId"
                  },
                  "accountingStatus": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accountingStatus"
                  },
                  "amount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "customerFollowDebtAmount"
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "customerFollowDebtDescription"
                  },
                  "expenseId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "expenseId"
                  },
                  "firstUnpaidInstallmentDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "firstUnpaidInstallmentDate"
                  },
                  "followTypeId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeId"
                  },
                  "followUpDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "followUpDate"
                  },
                  "loanId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "loanId"
                  },
                  "parentCustomerFollowDebtId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "parentCustomerFollowDebtId"
                  },
                  "whichLoanId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "whichLoanId"
                  }
                },
                "required": [
                  "amount",
                  "description",
                  "followTypeId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 11,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-customer-follow-debt",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "LoanId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "ExpenseId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "FirstUnpaidInstallmentDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "FollowUpDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "WhichLoanId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingStatus",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Amount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "ParentCustomerFollowDebtId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/debts/{customerFollowDebtId}": {
      "delete": {
        "operationId": "delete-customer-follow-debt",
        "tags": [
          "customer-follows"
        ],
        "summary": "delete-customer-follow-debt",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          },
          {
            "name": "customerFollowDebtId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowDebtId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "delete-customer-follow-debt",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts/{customerFollowDebtId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_10",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابع ديون العميل :{0}",
                "en": "Customer follow debt cannot be found. :{0}",
                "tr": "Müşteri takip borcu bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_DEBT_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/debts/{customerFollowDebtId}/accounting-entry-id": {
      "put": {
        "operationId": "update-customer-follow-debt-accounting-entry-id",
        "tags": [
          "customer-follows"
        ],
        "summary": "update-customer-follow-debt-accounting-entry-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          },
          {
            "name": "customerFollowDebtId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowDebtId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingEntryId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accountingEntryId"
                  }
                },
                "required": [
                  "accountingEntryId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow-debt-accounting-entry-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts/{customerFollowDebtId}/accounting-entry-id",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_10",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابع ديون العميل :{0}",
                "en": "Customer follow debt cannot be found. :{0}",
                "tr": "Müşteri takip borcu bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_DEBT_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/debts/{customerFollowDebtId}/accounting-status": {
      "put": {
        "operationId": "update-customer-follow-debt-accounting-status",
        "tags": [
          "customer-follows"
        ],
        "summary": "update-customer-follow-debt-accounting-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          },
          {
            "name": "customerFollowDebtId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowDebtId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingStatus": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accountingStatus",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "accounting_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Accounting slip has been issued for legal follow",
                          "labels": {
                            "ar": "تم إصدار قسيمة المحاسبة للمتابعة القانونية."
                          }
                        },
                        {
                          "value": 2,
                          "name": "Accounting slip has not been issued for legal follow",
                          "labels": {
                            "ar": "لم يتم إصدار قسيمة المحاسبة للمتابعة القانونية"
                          }
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "accountingStatus"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow-debt-accounting-status",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts/{customerFollowDebtId}/accounting-status",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingStatus",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_10",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابع ديون العميل :{0}",
                "en": "Customer follow debt cannot be found. :{0}",
                "tr": "Müşteri takip borcu bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_DEBT_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/debts/{customerFollowDebtId}/follow-type-id": {
      "put": {
        "operationId": "update-customer-follow-debt-follow-type-id",
        "tags": [
          "customer-follows"
        ],
        "summary": "update-customer-follow-debt-follow-type-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          },
          {
            "name": "customerFollowDebtId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowDebtId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "followTypeId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeId"
                  }
                },
                "required": [
                  "followTypeId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow-debt-follow-type-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts/{customerFollowDebtId}/follow-type-id",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_10",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابع ديون العميل :{0}",
                "en": "Customer follow debt cannot be found. :{0}",
                "tr": "Müşteri takip borcu bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_DEBT_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/debts/{customerFollowDebtId}/status": {
      "put": {
        "operationId": "update-customer-follow-debt-status",
        "tags": [
          "customer-follows"
        ],
        "summary": "update-customer-follow-debt-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          },
          {
            "name": "customerFollowDebtId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowDebtId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "followUpCloseDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "followUpCloseDate"
                  },
                  "status": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "status",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "customer_debt_follow_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Active",
                          "labels": {
                            "en": "Active",
                            "tr": "Aktif",
                            "ar": "نشط"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Passive",
                          "labels": {
                            "en": "Passive",
                            "tr": "Pasif",
                            "ar": "مبني للمجهول"
                          }
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "status"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow-debt-status",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/debts/{customerFollowDebtId}/status",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowUpCloseDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_10",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابع ديون العميل :{0}",
                "en": "Customer follow debt cannot be found. :{0}",
                "tr": "Müşteri takip borcu bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_DEBT_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/customer-follows/{id}/status": {
      "put": {
        "operationId": "update-customer-follow-status",
        "tags": [
          "customer-follows"
        ],
        "summary": "update-customer-follow-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerFollowId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "status",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "customer_follow_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Active",
                          "labels": {
                            "en": "Active",
                            "tr": "Aktif",
                            "ar": "نشط"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Passive",
                          "labels": {
                            "en": "Passive",
                            "tr": "Pasif",
                            "ar": "سلبي"
                          }
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "status"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-customer-follow-status",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "customer-follows/{id}/status",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_9",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على متابعة العميل. :{0}",
                "en": "Customer follow cannot be found. :{0}",
                "tr": "Müşteri takibi bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "CUSTOMER_FOLLOW_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/data-migrations": {
      "get": {
        "operationId": "legal-follow-get-data-migration-list",
        "tags": [
          "data-migrations"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Returns data migration records",
        "description": "Invokes the `legal-follow-get-data-migration-list` service definition through `GET /data-migrations`.\n\nTurkish display name: Data migration listesini döner",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-data-migration-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "data-migrations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "List<DataMigrationDto>",
          "envelopes": [
            "List"
          ],
          "payload": "DataMigrationDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "BranchName",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TableName",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LastCommittedId",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LastCommittedDate",
              "declared_type": "DateTime",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Script",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Parameters",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "HasError",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ErrorMessage",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "DatabaseName",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CreatedDate",
              "declared_type": "DateTime",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionStatus",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/extended-properties": {
      "get": {
        "operationId": "legal-follow-get-extended-property-list",
        "tags": [
          "extended-properties"
        ],
        "summary": "legal-follow-get-extended-property-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "x-aura-field-code": "formulaDefinitionCode"
                },
                "expression": {
                  "type": "string",
                  "x-aura-field-code": "expression"
                },
                "parameters": {
                  "type": "object",
                  "x-aura-field-code": "filterParameters"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "entityId": {
                        "type": "string",
                        "x-aura-field-code": "entityId"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "id"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "isParametric": {
                        "type": "boolean",
                        "x-aura-field-code": "isParametric"
                      },
                      "name": {
                        "type": "string",
                        "x-aura-field-code": "name",
                        "x-aura-maskable": true
                      },
                      "parameterCode": {
                        "type": "string",
                        "x-aura-field-code": "parameterCode"
                      },
                      "parameterKey": {
                        "type": "string",
                        "x-aura-field-code": "parameterKey"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-extended-property-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "extended-properties",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      },
      "post": {
        "operationId": "legal-follow-create-extended-property",
        "tags": [
          "extended-properties"
        ],
        "summary": "legal-follow-create-extended-property",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "entityId": {
                    "type": "string",
                    "x-aura-field-code": "entityId"
                  },
                  "isParametric": {
                    "type": "boolean",
                    "x-aura-field-code": "isParametric"
                  },
                  "name": {
                    "x-aura-type": "unresolved"
                  },
                  "parameterCode": {
                    "type": "string",
                    "x-aura-field-code": "parameterCode"
                  },
                  "parameterKey": {
                    "type": "string",
                    "x-aura-field-code": "parameterKey"
                  }
                },
                "required": [
                  "entityId",
                  "isParametric",
                  "name",
                  "parameterCode",
                  "parameterKey"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The schema is an `anyOf` over three envelopes: the record, a bare array of it, and a page `{total, data[]}` carrying the same record.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "Response whose record fields are declared but whose outer cardinality is not established by the catalog.",
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "x-aura-type": "unresolved"
                        }
                      }
                    },
                    {
                      "type": "array",
                      "description": "Bare-array response possibility.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "x-aura-type": "unresolved"
                          }
                        }
                      },
                      "x-aura-documentation": {
                        "language": "en",
                        "status": "structural-fallback",
                        "source": "catalog-structure"
                      }
                    },
                    {
                      "type": "object",
                      "description": "Paged response envelope observed on the BFF response path.",
                      "x-aura-documentation": {
                        "language": "en",
                        "status": "structural-fallback",
                        "source": "catalog-structure"
                      },
                      "properties": {
                        "data": {
                          "type": "array",
                          "description": "Response records carried by this page.",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "x-aura-type": "unresolved"
                              }
                            }
                          },
                          "x-aura-documentation": {
                            "language": "en",
                            "status": "structural-fallback",
                            "source": "catalog-structure"
                          }
                        },
                        "total": {
                          "type": "integer",
                          "format": "int64",
                          "description": "Total matching records, ignoring paging.",
                          "x-aura-documentation": {
                            "language": "en",
                            "status": "structural-fallback",
                            "source": "catalog-structure"
                          }
                        }
                      },
                      "required": [
                        "data"
                      ]
                    }
                  ],
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-extended-property",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "extended-properties",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/extended-properties/{id}": {
      "put": {
        "operationId": "legal-follow-update-extended-property",
        "tags": [
          "extended-properties"
        ],
        "summary": "legal-follow-update-extended-property",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "entityId": {
                    "type": "string",
                    "x-aura-field-code": "entityId"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "isParametric": {
                    "type": "boolean",
                    "x-aura-field-code": "isParametric"
                  },
                  "parameterCode": {
                    "type": "string",
                    "x-aura-field-code": "parameterCode"
                  },
                  "parameterKey": {
                    "type": "string",
                    "x-aura-field-code": "parameterKey"
                  }
                },
                "required": [
                  "entityId",
                  "isActive",
                  "isParametric",
                  "parameterCode",
                  "parameterKey"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-extended-property",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "extended-properties/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/follow-types": {
      "get": {
        "operationId": "get-follow-type-list",
        "tags": [
          "follow-types"
        ],
        "summary": "get-follow-type-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "customerType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "customerType"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "followTypeDescription"
                      },
                      "followType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "followType"
                      },
                      "followTypeCode": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "followTypeCode"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "loanFollowTypeId"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "isClosedCollection": {
                        "type": "boolean",
                        "x-aura-field-code": "isClosedCollection"
                      },
                      "maxDayOfDelay": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "maxDayOfDelay"
                      },
                      "minDayOfDelay": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "minDayOfDelay"
                      },
                      "name": {
                        "type": "string",
                        "x-aura-field-code": "followTypeName"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-follow-type-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types",
        "x-aura-capabilities": {
          "caching": true,
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<FollowTypeDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "FollowTypeDto",
          "collection": true,
          "members": [
            {
              "name": "FollowType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "MinDayOfDelay",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaxDayOfDelay",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsClosedCollection",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeCode",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "create-follow-type",
        "tags": [
          "follow-types"
        ],
        "summary": "create-follow-type",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "customerType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "customer_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Individual",
                          "labels": {
                            "en": "Individual",
                            "tr": "Bireysel",
                            "ar": "فرد"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Corporate",
                          "labels": {
                            "en": "Corporate",
                            "tr": "Kurumsal",
                            "ar": "شركة"
                          }
                        }
                      ]
                    }
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "followTypeDescription"
                  },
                  "followType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "followType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "follow_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Customer",
                          "labels": {
                            "en": "Customer",
                            "tr": "Müşteri",
                            "ar": "عميل"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Loan",
                          "labels": {
                            "en": "Loan",
                            "tr": "Kredi",
                            "ar": "قرض"
                          }
                        }
                      ]
                    }
                  },
                  "followTypeCode": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "followTypeCode"
                  },
                  "isClosedCollection": {
                    "type": "boolean",
                    "x-aura-field-code": "isClosedCollection"
                  },
                  "maxDayOfDelay": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "maxDayOfDelay"
                  },
                  "minDayOfDelay": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "minDayOfDelay"
                  },
                  "name": {
                    "type": "string",
                    "x-aura-field-code": "followTypeName"
                  }
                },
                "required": [
                  "customerType",
                  "followType",
                  "followTypeCode",
                  "isClosedCollection",
                  "maxDayOfDelay",
                  "minDayOfDelay",
                  "name"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 8,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-follow-type",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "FollowType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MinDayOfDelay",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MaxDayOfDelay",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsClosedCollection",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeCode",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_1",
              "status": 400,
              "message": {
                "ar": "هناك تعريف متابعة بنفس الرمز. الرمز: {0}",
                "en": "There is a follow definition with the same code. Code:{0}",
                "tr": "Aynı koda sahip bir takip tanımı var. Kod:{0}"
              },
              "message_available": true,
              "constant_name": "DEFINITION_ALREADY_REGISTERED"
            },
            {
              "code": "ERR_LGLFLLW_2",
              "status": 400,
              "message": {
                "ar": "لا يمكن أن يكون الحد الأدنى لعدد أيام التأخير أقل من الحد الأقصى لعدد أيام التأخير في حالة تتبع مختلفة، ولا يمكن أن يكون أكبر من الحد الأدنى لعدد أيام التأخير. اتبع الرمز:{0}",
                "en": "The minimum number of days of delay cannot be less than the maximum number of days of delay in a different tracking state, and cannot be greater than the minimum number of days of delay.Follow Code:{0}",
                "tr": "Minimum gecikme günü sayısı, farklı bir izleme durumundaki maksimum gecikme günü sayısından az olamaz ve minimum gecikme günü sayısından fazla olamaz. Kodu Takip Edin:{0}"
              },
              "message_available": true,
              "constant_name": "MINDAYOFDELAY_CONTROL"
            },
            {
              "code": "ERR_LGLFLLW_3",
              "status": 400,
              "message": {
                "ar": "يجب أن يكون أقل يوم تأخير من يوم التأخير الأقصى.",
                "en": "min Day Of Delay must be less than max Day Of Delay.",
                "tr": "minimum erteleme günü, maksimum erteleme günü değerinden küçük olmalıdır."
              },
              "message_available": true,
              "constant_name": "MINDAYOFDELAY_GREATER_THAN_MAXDAYOFDELAY"
            }
          ]
        }
      }
    },
    "/follow-types/{id}": {
      "get": {
        "operationId": "get-follow-type-by-id",
        "tags": [
          "follow-types"
        ],
        "summary": "get-follow-type-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "loanFollowTypeId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-follow-type-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "FollowTypeDto",
          "payload": "FollowTypeDto",
          "collection": false,
          "members": [
            {
              "name": "FollowType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "MinDayOfDelay",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaxDayOfDelay",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsClosedCollection",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeCode",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-follow-type",
        "tags": [
          "follow-types"
        ],
        "summary": "update-follow-type",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "customerType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "customer_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Individual",
                          "labels": {
                            "en": "Individual",
                            "tr": "Bireysel",
                            "ar": "فرد"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Corporate",
                          "labels": {
                            "en": "Corporate",
                            "tr": "Kurumsal",
                            "ar": "شركة"
                          }
                        }
                      ]
                    }
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "followTypeDescription"
                  },
                  "followType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "followType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "follow_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Customer",
                          "labels": {
                            "en": "Customer",
                            "tr": "Müşteri",
                            "ar": "عميل"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Loan",
                          "labels": {
                            "en": "Loan",
                            "tr": "Kredi",
                            "ar": "قرض"
                          }
                        }
                      ]
                    }
                  },
                  "isClosedCollection": {
                    "type": "boolean",
                    "x-aura-field-code": "isClosedCollection"
                  },
                  "maxDayOfDelay": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "maxDayOfDelay"
                  },
                  "minDayOfDelay": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "minDayOfDelay"
                  },
                  "name": {
                    "type": "string",
                    "x-aura-field-code": "followTypeName"
                  }
                },
                "required": [
                  "customerType",
                  "followType",
                  "isClosedCollection",
                  "maxDayOfDelay",
                  "minDayOfDelay",
                  "name"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 7,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-follow-type",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MinDayOfDelay",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MaxDayOfDelay",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsClosedCollection",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_2",
              "status": 400,
              "message": {
                "ar": "لا يمكن أن يكون الحد الأدنى لعدد أيام التأخير أقل من الحد الأقصى لعدد أيام التأخير في حالة تتبع مختلفة، ولا يمكن أن يكون أكبر من الحد الأدنى لعدد أيام التأخير. اتبع الرمز:{0}",
                "en": "The minimum number of days of delay cannot be less than the maximum number of days of delay in a different tracking state, and cannot be greater than the minimum number of days of delay.Follow Code:{0}",
                "tr": "Minimum gecikme günü sayısı, farklı bir izleme durumundaki maksimum gecikme günü sayısından az olamaz ve minimum gecikme günü sayısından fazla olamaz. Kodu Takip Edin:{0}"
              },
              "message_available": true,
              "constant_name": "MINDAYOFDELAY_CONTROL"
            },
            {
              "code": "ERR_LGLFLLW_3",
              "status": 400,
              "message": {
                "ar": "يجب أن يكون أقل يوم تأخير من يوم التأخير الأقصى.",
                "en": "min Day Of Delay must be less than max Day Of Delay.",
                "tr": "minimum erteleme günü, maksimum erteleme günü değerinden küçük olmalıdır."
              },
              "message_available": true,
              "constant_name": "MINDAYOFDELAY_GREATER_THAN_MAXDAYOFDELAY"
            },
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/active": {
      "put": {
        "operationId": "update-follow-type-active",
        "tags": [
          "follow-types"
        ],
        "summary": "update-follow-type-active",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  }
                },
                "required": [
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-follow-type-active",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/active",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_5",
              "status": 400,
              "message": {
                "ar": "لا يمكن تفعيله لأنه يتضمن minDayOfDelay - maxDayOfDelayy مع نوع متابعة نشط مختلف.:{0}",
                "en": "It cannot be activated because it includes minDayOfDelay - maxDayOfDelayy with different active Follow Type.:{0}",
                "tr": "Minimum gecikme günü sayısı - maksimum gecikme günü sayısını farklı etkin Takip Türü ile içerdiğinden etkinleştirilemez. :{0}"
              },
              "message_available": true,
              "constant_name": "MINDAYOFDELAY_CONTROL_ACTIVATED_FOLLOW_TYPE"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/details": {
      "get": {
        "operationId": "get-follow-type-details-by-id",
        "tags": [
          "follow-types"
        ],
        "summary": "get-follow-type-details-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "customerType": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "customerType"
                    },
                    "description": {
                      "type": "string",
                      "x-aura-field-code": "followTypeDescription"
                    },
                    "followType": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "followType"
                    },
                    "followTypeCode": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "followTypeCode"
                    },
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "followTypeId"
                    },
                    "isActive": {
                      "type": "boolean",
                      "x-aura-field-code": "isActive"
                    },
                    "isClosedCollection": {
                      "type": "boolean",
                      "x-aura-field-code": "isClosedCollection"
                    },
                    "maxDayOfDelay": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "maxDayOfDelay"
                    },
                    "minDayOfDelay": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "minDayOfDelay"
                    },
                    "name": {
                      "type": "string",
                      "x-aura-field-code": "followTypeName"
                    },
                    "notifications": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "delayDayCount": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "delayDayCount"
                          },
                          "id": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "notificationId"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActive"
                          },
                          "notificationType": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "notificationType"
                          },
                          "period": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "period"
                          },
                          "repeatCount": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "repeatCount"
                          },
                          "templateId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "templateId"
                          }
                        },
                        "x-aura-field-code": "notifications"
                      }
                    },
                    "provisions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "debtItem": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "debtItem"
                          },
                          "generalProvisonRate": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "generalProvisonRate"
                          },
                          "id": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "provisionId"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActive"
                          },
                          "ledgerMatrixFieldId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "ledgerMatrixFieldId"
                          },
                          "ledgerMatrixId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "ledgerMatrixId"
                          },
                          "specialProvisionRate": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "specialProvisionRate"
                          }
                        },
                        "x-aura-field-code": "provisions"
                      }
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-follow-type-details-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/details",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "FollowTypeDetailDto",
          "payload": "FollowTypeDetailDto",
          "collection": false,
          "members": [
            {
              "name": "Provisions",
              "declared_type": "List<FollowTypeProvisionDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "Notifications",
              "declared_type": "List<FollowTypeNotificationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/notifications": {
      "get": {
        "operationId": "get-follow-type-notification-list",
        "tags": [
          "follow-types"
        ],
        "summary": "get-follow-type-notification-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeNotificationId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "x-aura-field-code": "code"
                },
                "expression": {
                  "type": "string",
                  "x-aura-field-code": "expression"
                },
                "parameters": {
                  "type": "object",
                  "x-aura-field-code": "filterParameters"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "delayDayCount": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "delayDayCount"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "followTypeNotificationId"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "notificationType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "notificationType"
                      },
                      "period": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "period"
                      },
                      "repeatCount": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "repeatCount"
                      },
                      "templateId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "templateId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-follow-type-notification-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/notifications",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<FollowTypeNotificationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "FollowTypeNotificationDto",
          "collection": true,
          "members": [
            {
              "name": "NotificationType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Period",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "RepeatCount",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "TemplateId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DelayDayCount",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-follow-type-notification",
        "tags": [
          "follow-types"
        ],
        "summary": "create-follow-type-notification",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "minDelayDayCount": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "minDelayDayCount"
                  },
                  "notificationType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "notificationType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "notification_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "SMS",
                          "labels": {
                            "en": "SMS",
                            "tr": "SMS",
                            "ar": "رسالة قصيرة"
                          }
                        },
                        {
                          "value": 2,
                          "name": "CALL",
                          "labels": {
                            "en": "CALL",
                            "tr": "Arama",
                            "ar": "مكالمة"
                          }
                        },
                        {
                          "value": 3,
                          "name": "DUNNINGLETTER",
                          "labels": {
                            "en": "DUNNINGLETTER",
                            "tr": "İhtarname",
                            "ar": "خطاب التنبيه"
                          }
                        }
                      ]
                    }
                  },
                  "period": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "period",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "notification_period",
                      "values": [
                        {
                          "value": 1,
                          "name": "DAILY",
                          "labels": {
                            "en": "DAILY",
                            "tr": "Günlük",
                            "ar": "يومي"
                          }
                        },
                        {
                          "value": 2,
                          "name": "WEEKLY",
                          "labels": {
                            "en": "WEEKLY",
                            "tr": "Haftalık",
                            "ar": "أسبوعي"
                          }
                        }
                      ]
                    }
                  },
                  "repeatCount": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "repeatCount"
                  },
                  "templateId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "templateId"
                  }
                },
                "required": [
                  "minDelayDayCount",
                  "notificationType",
                  "period",
                  "repeatCount",
                  "templateId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-follow-type-notification",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/notifications",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "NotificationType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Period",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "RepeatCount",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "TemplateId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MinDelayDayCount",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/notifications/{notificationId}": {
      "put": {
        "operationId": "update-follow-type-notification",
        "tags": [
          "follow-types"
        ],
        "summary": "update-follow-type-notification",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          },
          {
            "name": "notificationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "notificationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "minDelayDayCount": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "minDelayDayCount"
                  },
                  "notificationType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "notificationType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "notification_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "SMS",
                          "labels": {
                            "en": "SMS",
                            "tr": "SMS",
                            "ar": "رسالة قصيرة"
                          }
                        },
                        {
                          "value": 2,
                          "name": "CALL",
                          "labels": {
                            "en": "CALL",
                            "tr": "Arama",
                            "ar": "مكالمة"
                          }
                        },
                        {
                          "value": 3,
                          "name": "DUNNINGLETTER",
                          "labels": {
                            "en": "DUNNINGLETTER",
                            "tr": "İhtarname",
                            "ar": "خطاب التنبيه"
                          }
                        }
                      ]
                    }
                  },
                  "period": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "period",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "notification_period",
                      "values": [
                        {
                          "value": 1,
                          "name": "DAILY",
                          "labels": {
                            "en": "DAILY",
                            "tr": "Günlük",
                            "ar": "يومي"
                          }
                        },
                        {
                          "value": 2,
                          "name": "WEEKLY",
                          "labels": {
                            "en": "WEEKLY",
                            "tr": "Haftalık",
                            "ar": "أسبوعي"
                          }
                        }
                      ]
                    }
                  },
                  "repeatCount": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "repeatCount"
                  },
                  "templateId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "templateId"
                  }
                },
                "required": [
                  "minDelayDayCount",
                  "notificationType",
                  "period",
                  "repeatCount",
                  "templateId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-follow-type-notification",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/notifications/{notificationId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "NotificationId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "NotificationType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Period",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "RepeatCount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "TemplateId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "MinDelayDayCount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_8",
              "status": 400,
              "message": {
                "ar": "نوع المتابعة - لا يمكن العثور على المعلومات. الإشعار: {0}",
                "en": "Follow Type - information cannot be found. Notification:{0}",
                "tr": "Takip Türü - bilgi bulunamıyor. Bildirim :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOTIFICATION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/notifications/{notificationId}/active": {
      "put": {
        "operationId": "update-follow-type-notification-active",
        "tags": [
          "follow-types"
        ],
        "summary": "update-follow-type-notification-active",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          },
          {
            "name": "notificationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "notificationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  }
                },
                "required": [
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-follow-type-notification-active",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/notifications/{notificationId}/active",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "NotificationId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_8",
              "status": 400,
              "message": {
                "ar": "نوع المتابعة - لا يمكن العثور على المعلومات. الإشعار: {0}",
                "en": "Follow Type - information cannot be found. Notification:{0}",
                "tr": "Takip Türü - bilgi bulunamıyor. Bildirim :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOTIFICATION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/provisions": {
      "get": {
        "operationId": "get-follow-type-provision-list",
        "tags": [
          "follow-types"
        ],
        "summary": "get-follow-type-provision-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "loanFollowTypeId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "debtItem": {
                        "x-aura-type": "unresolved"
                      },
                      "generalProvisonRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "generalProvisionRate"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "provisionId"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "ledgerMatrixFieldId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "ledgerMatrixFieldId"
                      },
                      "ledgerMatrixId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "ledgerMatrixId"
                      },
                      "provisionDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "provisionDate"
                      },
                      "reversedDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "reversedDate"
                      },
                      "specialProvisionRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "specialProvisionRate"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-follow-type-provision-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/provisions",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<FollowTypeProvisionDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "FollowTypeProvisionDto",
          "collection": true,
          "members": [
            {
              "name": "DebtItem",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LedgerMatrixId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "LedgerMatrixFieldId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "GeneralProvisonRate",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "SpecialProvisionRate",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-follow-type-provision",
        "tags": [
          "follow-types"
        ],
        "summary": "create-follow-type-provision",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "debtItem": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "debtItem",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "debt_item",
                      "values": [
                        {
                          "value": 1,
                          "name": "Principial Amount",
                          "labels": {
                            "en": "Principial Amount",
                            "tr": "Anapara Tutarı",
                            "ar": "المبلغ الرئيسي"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Profit Amount",
                          "labels": {
                            "en": "Profit Amount",
                            "tr": "Kâr Tutarı",
                            "ar": "مبلغ الربح"
                          }
                        }
                      ]
                    }
                  },
                  "generalProvisonRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "generalProvisionRate"
                  },
                  "ledgerMatrixFieldId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "ledgerMatrixFieldId"
                  },
                  "ledgerMatrixId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "ledgerMatrixId"
                  },
                  "specialProvisionRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "specialProvisionRate"
                  }
                },
                "required": [
                  "debtItem",
                  "generalProvisonRate",
                  "ledgerMatrixFieldId",
                  "ledgerMatrixId",
                  "specialProvisionRate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-follow-type-provision",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/provisions",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "DebtItem",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "LedgerMatrixId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "LedgerMatrixFieldId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "GeneralProvisonRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "SpecialProvisionRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_6",
              "status": 400,
              "message": {
                "ar": "هناك سجل لهذا البند ديون في نوع المتابعة هذا.",
                "en": "There is a record for this debt item in this follow type.",
                "tr": "Bu takip türünde bu borç kalemine ait kayıt bulunmaktadır."
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_PROVISION_FOUND_IS_ACTIVE"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/provisions/{provisionId}": {
      "put": {
        "operationId": "update-follow-type-provision",
        "tags": [
          "follow-types"
        ],
        "summary": "update-follow-type-provision",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          },
          {
            "name": "provisionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "generalProvisonRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "generalProvisionRate"
                  },
                  "ledgerMatrixFieldId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "ledgerMatrixFieldId"
                  },
                  "ledgerMatrixId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "ledgerMatrixId"
                  },
                  "specialProvisionRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "specialProvisionRate"
                  }
                },
                "required": [
                  "generalProvisonRate",
                  "ledgerMatrixFieldId",
                  "ledgerMatrixId",
                  "specialProvisionRate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-follow-type-provision",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/provisions/{provisionId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "LedgerMatrixId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "LedgerMatrixFieldId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "GeneralProvisonRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "SpecialProvisionRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_7",
              "status": 400,
              "message": {
                "ar": "متابعة النوع - لا يمكن العثور على المخصص. المخصص: {0}",
                "en": "Follow Type - provision cannot be found. Provision: {0}",
                "tr": "Takip Türü - provizyon bulunamıyor. Provizyon : {0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/follow-types/{id}/provisions/{provisionId}/active": {
      "put": {
        "operationId": "update-follow-type-provision-active",
        "tags": [
          "follow-types"
        ],
        "summary": "update-follow-type-provision-active",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          },
          {
            "name": "provisionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  }
                },
                "required": [
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-follow-type-provision-active",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "follow-types/{id}/provisions/{provisionId}/active",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            },
            {
              "code": "ERR_LGLFLLW_6",
              "status": 400,
              "message": {
                "ar": "هناك سجل لهذا البند ديون في نوع المتابعة هذا.",
                "en": "There is a record for this debt item in this follow type.",
                "tr": "Bu takip türünde bu borç kalemine ait kayıt bulunmaktadır."
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_PROVISION_FOUND_IS_ACTIVE"
            },
            {
              "code": "ERR_LGLFLLW_7",
              "status": 400,
              "message": {
                "ar": "متابعة النوع - لا يمكن العثور على المخصص. المخصص: {0}",
                "en": "Follow Type - provision cannot be found. Provision: {0}",
                "tr": "Takip Türü - provizyon bulunamıyor. Provizyon : {0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/localizations": {
      "get": {
        "operationId": "legal-follow-get-localization-list",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-get-localization-list",
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-localization-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<LocalizationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "LocalizationDto",
          "collection": true,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "legal-follow-create-localization",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-create-localization",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "localizationCode"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  },
                  "type": {
                    "type": "string",
                    "x-aura-field-code": "localizationType"
                  }
                },
                "required": [
                  "code",
                  "translations",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-localization",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/by-code/{code}": {
      "get": {
        "operationId": "legal-follow-get-localization-by-code",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-get-localization-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "localizationCode"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-localization-by-code",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "LocalizationDto",
          "payload": "LocalizationDto",
          "collection": false,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}": {
      "delete": {
        "operationId": "legal-follow-delete-localization",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-delete-localization",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-delete-localization",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "get": {
        "operationId": "legal-follow-get-localization-by-id",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-get-localization-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-localization-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "LocalizationDto",
          "payload": "LocalizationDto",
          "collection": false,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "put": {
        "operationId": "legal-follow-update-localization",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-update-localization",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  },
                  "type": {
                    "type": "string",
                    "x-aura-field-code": "localizationType"
                  }
                },
                "required": [
                  "translations",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-localization",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}/translations": {
      "get": {
        "operationId": "legal-follow-get-localization-translation-by-localization-id",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-get-localization-translation-by-localization-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-localization-translation-by-localization-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}/translations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<LocalizationTranslationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "LocalizationTranslationDto",
          "collection": true,
          "members": [
            {
              "name": "TranslationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LanguageCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "post": {
        "operationId": "legal-follow-create-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-create-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-localization-translation",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}/translations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}/translations/{translationId}": {
      "delete": {
        "operationId": "legal-follow-delete-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-delete-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          },
          {
            "name": "translationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "translationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-delete-localization-translation",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}/translations/{translationId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "put": {
        "operationId": "legal-follow-update-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "legal-follow-update-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          },
          {
            "name": "translationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "translationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  }
                },
                "required": [
                  "context"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-localization-translation",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "localizations/{id}/translations/{translationId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/parameters": {
      "get": {
        "operationId": "legal-follow-get-parameter-list",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "x-aura-field-code": "formulaDefinitionCode"
                },
                "expression": {
                  "type": "string",
                  "x-aura-field-code": "expression"
                },
                "parameters": {
                  "type": "object",
                  "x-aura-field-code": "filterParameters"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a collection.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a collection.",
          "code_response_state": "structure",
          "code_cardinality": "collection",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        }
      },
      "post": {
        "operationId": "legal-follow-create-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-create-parameter",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "parameterCode"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "parameterName"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-parameter",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}": {
      "get": {
        "operationId": "legal-follow-get-parameter-by-code",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "code"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-by-code",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}/default-value": {
      "get": {
        "operationId": "legal-follow-get-parameter-default-value-by-parameter-code",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-default-value-by-parameter-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "code"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-default-value-by-parameter-code",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/by-code/{code}/default-value",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_14",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_DEFAULT_VALUE_BY_CODE_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}/values": {
      "get": {
        "operationId": "legal-follow-get-parameter-value-list-by-parameter-code",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-value-list-by-parameter-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "code"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "context": {
                        "type": "string",
                        "x-aura-field-code": "context"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "id"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "paramKey": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "paramKey"
                      },
                      "sortOrder": {
                        "type": "number",
                        "x-aura-field-code": "sortOrder"
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "x-aura-field-code": "context"
                            },
                            "languageCode": {
                              "type": "string",
                              "x-aura-field-code": "languageCode"
                            }
                          },
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-value-list-by-parameter-code",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/by-code/{code}/values",
        "x-aura-capabilities": {
          "caching": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterValueDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParamKey",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "SortOrder",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterValueTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}": {
      "delete": {
        "operationId": "legal-follow-delete-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-delete-parameter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-delete-parameter",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "get": {
        "operationId": "legal-follow-get-parameter-by-id",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "legal-follow-update-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-update-parameter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "parameterName"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-parameter",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/default-value": {
      "get": {
        "operationId": "legal-follow-get-parameter-default-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-default-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-default-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/default-value",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_13",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_DEFAULT_VALUE_BY_ID_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/field-values/{fieldValueId}": {
      "delete": {
        "operationId": "legal-follow-delete-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-delete-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "fieldValueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldValueId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-delete-parameter-field-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/field-values/{fieldValueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_10",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_VALUE_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "legal-follow-update-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-update-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "fieldValueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldValueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "fieldValue": {
                    "type": "string",
                    "x-aura-field-code": "fieldValue"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  }
                },
                "required": [
                  "fieldValue",
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-parameter-field-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/field-values/{fieldValueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_10",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_VALUE_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/fields": {
      "get": {
        "operationId": "legal-follow-get-parameter-field-list",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-field-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-field-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/fields",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterFieldDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterFieldDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterFieldTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "legal-follow-create-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-create-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "code"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "name",
                          "x-aura-maskable": true
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-parameter-field",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/fields",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_CODE_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/fields/{fieldId}": {
      "delete": {
        "operationId": "legal-follow-delete-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-delete-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-delete-parameter-field",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_5",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_NOT_EXISTS"
            }
          ]
        }
      },
      "put": {
        "operationId": "legal-follow-update-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-update-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "name",
                          "x-aura-maskable": true
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-parameter-field",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_5",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/values": {
      "get": {
        "operationId": "legal-follow-get-parameter-value-list",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-value-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a collection.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-value-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/values",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterValueDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParamKey",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "SortOrder",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterValueTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a collection.",
          "code_response_state": "structure",
          "code_cardinality": "collection",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "legal-follow-create-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-create-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "paramKey": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "paramKey"
                  },
                  "sortOrder": {
                    "type": "number",
                    "x-aura-field-code": "sortOrder"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "context",
                  "paramKey",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-parameter-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/values",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_7",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_WITH_KEY_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/values/{valueId}": {
      "delete": {
        "operationId": "legal-follow-delete-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-delete-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-delete-parameter-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_NOT_EXISTS"
            }
          ]
        }
      },
      "put": {
        "operationId": "legal-follow-update-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-update-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "sortOrder": {
                    "type": "number",
                    "x-aura-field-code": "sortOrder"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "context",
                  "isActive",
                  "sortOrder",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-update-parameter-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/values/{valueId}/field-values": {
      "get": {
        "operationId": "legal-follow-get-parameter-field-value-list",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-get-parameter-field-value-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-get-parameter-field-value-list",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}/field-values",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterFieldValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterFieldValueDto",
          "collection": true,
          "members": [
            {
              "name": "ParameterFieldValueId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParameterValueId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParameterFieldId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FieldValue",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "legal-follow-create-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "legal-follow-create-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "fieldValues": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "fieldValue": {
                          "type": "string",
                          "x-aura-field-code": "fieldValue"
                        },
                        "isActive": {
                          "type": "boolean",
                          "x-aura-field-code": "isActive"
                        },
                        "parameterFieldId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "parameterFieldId"
                        }
                      },
                      "required": [
                        "fieldValue",
                        "isActive",
                        "parameterFieldId"
                      ],
                      "x-aura-field-code": "fieldValues"
                    }
                  }
                },
                "required": [
                  "fieldValues"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "legal-follow-create-parameter-field-value",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}/field-values",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/provisions": {
      "post": {
        "operationId": "create-provision",
        "tags": [
          "provisions"
        ],
        "summary": "create-provision",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "debtAmount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "debtAmount"
                  },
                  "followTypeId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "followTypeId"
                  },
                  "provisionAmount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "provisionAmount"
                  },
                  "provisionDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "provisionDate"
                  },
                  "provisionType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "provisionType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "provision_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "General",
                          "labels": {
                            "ar": "عام"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Special",
                          "labels": {
                            "ar": "خاص"
                          }
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "debtAmount",
                  "provisionAmount",
                  "provisionDate",
                  "provisionType"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-provision",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "ProvisionType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        }
      }
    },
    "/provisions/by-follow-type-id/{followTypeId}": {
      "get": {
        "operationId": "get-provision-by-follow-type-id",
        "tags": [
          "provisions"
        ],
        "summary": "get-provision-by-follow-type-id",
        "parameters": [
          {
            "name": "followTypeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "followTypeId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a collection.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-provision-by-follow-type-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/by-follow-type-id/{followTypeId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "FollowTypeId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ProvisionDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ProvisionDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversedAccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversedDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a collection.",
          "code_response_state": "structure",
          "code_cardinality": "collection",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_4",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على نوع المتابعة: {0}",
                "en": "Follow Type cannot be found. :{0}",
                "tr": "Takip Türü bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "FOLLOWTYPE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/provisions/provision-item/by-customer-id/{customerId}": {
      "get": {
        "operationId": "get-provision-item-list-by-customer-id",
        "tags": [
          "provisions"
        ],
        "summary": "get-provision-item-list-by-customer-id",
        "parameters": [
          {
            "name": "customerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "customerId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "customerFollowDebtId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowDebtId"
                      },
                      "customerId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerId"
                      },
                      "debtAmount": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "debtAmount"
                      },
                      "delayDayCount": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "delayDayCount"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "provisionItemId"
                      },
                      "loanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "loanId"
                      },
                      "provisionAmount": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "provisionAmount"
                      },
                      "provisionId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "provisionId"
                      },
                      "provisionItemDetails": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "debtAmount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "debtAmount"
                            },
                            "debtItem": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "debtItem"
                            },
                            "followTypeProvisionId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "followTypeProvisionId"
                            },
                            "id": {
                              "x-aura-type": "unresolved"
                            },
                            "provisionAmount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "provisionAmount"
                            }
                          },
                          "x-aura-field-code": "provisionItemDetails"
                        }
                      },
                      "provisionRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "provisionRate"
                      },
                      "status": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "status"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-provision-item-list-by-customer-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/provision-item/by-customer-id/{customerId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "CustomerId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ProvisionItemDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ProvisionItemDto",
          "collection": true,
          "members": [
            {
              "name": "LoanId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DelayDayCount",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionRate",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProvisionItemDetails",
              "declared_type": "List<ProvisionItemDetailDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/provisions/provision-item/by-loan-id/{loanId}": {
      "get": {
        "operationId": "get-provision-item-list-by-loan-id",
        "tags": [
          "provisions"
        ],
        "summary": "get-provision-item-list-by-loan-id",
        "parameters": [
          {
            "name": "loanId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "loanId"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "x-aura-field-code": "code"
                },
                "expression": {
                  "type": "string",
                  "x-aura-field-code": "expression"
                },
                "parameters": {
                  "type": "object",
                  "properties": {
                    "comparer": {
                      "type": "object",
                      "x-aura-field-code": "comparer"
                    },
                    "count": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "count"
                    },
                    "item": {
                      "type": "object",
                      "x-aura-field-code": "item"
                    },
                    "keys": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "x-aura-field-code": "keys"
                      }
                    },
                    "values": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "x-aura-field-code": "values"
                      }
                    }
                  },
                  "x-aura-field-code": "parameters"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "customerFollowDebtId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerFollowDebtId"
                      },
                      "customerId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerId"
                      },
                      "debtAmount": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "debtAmount"
                      },
                      "delayDayCount": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "delayDayCount"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "provisionItemId"
                      },
                      "loanId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "loanId"
                      },
                      "provisionAmount": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "provisionAmount"
                      },
                      "provisionId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "provisionId"
                      },
                      "provisionItemDetails": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "debtAmount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "debtAmount"
                            },
                            "debtItem": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "debtItem"
                            },
                            "followTypeProvisionId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "followTypeProvisionId"
                            },
                            "id": {
                              "x-aura-type": "unresolved"
                            },
                            "provisionAmount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "provisionAmount"
                            }
                          },
                          "x-aura-field-code": "provisionItemDetails"
                        }
                      },
                      "provisionRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "provisionRate"
                      },
                      "status": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "status"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-provision-item-list-by-loan-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/provision-item/by-loan-id/{loanId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "LoanId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ProvisionItemDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ProvisionItemDto",
          "collection": true,
          "members": [
            {
              "name": "LoanId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DelayDayCount",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionRate",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProvisionItemDetails",
              "declared_type": "List<ProvisionItemDetailDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/provisions/{id}": {
      "get": {
        "operationId": "get-provision-by-id",
        "tags": [
          "provisions"
        ],
        "summary": "get-provision-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "accountingEntryId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "accountingEntryId"
                    },
                    "debtAmount": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "debtAmount"
                    },
                    "followTypeId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "followTypeId"
                    },
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "provisionId"
                    },
                    "provisionAmount": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "provisionAmount"
                    },
                    "provisionDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "provisionDate"
                    },
                    "provisionType": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "provisionType"
                    },
                    "reversedAccountingEntryId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "reversedAccountingEntryId"
                    },
                    "reversedDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "reversedDate"
                    },
                    "status": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "status"
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-provision-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ProvisionDto",
          "payload": "ProvisionDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversedAccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversedDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_16",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على الإعانة: {0}",
                "en": "Provision cannot be found. :{0}",
                "tr": "Provizyon bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/provisions/{id}/accounting-entry-id": {
      "put": {
        "operationId": "update-provision-accounting-entry-id",
        "tags": [
          "provisions"
        ],
        "summary": "update-provision-accounting-entry-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingEntryId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accountingEntryId"
                  }
                },
                "required": [
                  "accountingEntryId"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-provision-accounting-entry-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}/accounting-entry-id",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_16",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على الإعانة: {0}",
                "en": "Provision cannot be found. :{0}",
                "tr": "Provizyon bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/provisions/{id}/details": {
      "get": {
        "operationId": "get-provision-details-by-id",
        "tags": [
          "provisions"
        ],
        "summary": "get-provision-details-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-provision-details-by-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}/details",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ProvisionDetailDto",
          "payload": "ProvisionDetailDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FollowTypeId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversedAccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversedDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProvisionDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProvisionItems",
              "declared_type": "List<ProvisionItemDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_16",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على الإعانة: {0}",
                "en": "Provision cannot be found. :{0}",
                "tr": "Provizyon bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/provisions/{id}/provision-item": {
      "post": {
        "operationId": "create-provision-item",
        "tags": [
          "provisions"
        ],
        "summary": "create-provision-item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "customerFollowDebtId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerFollowDebtId"
                  },
                  "customerId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerId"
                  },
                  "debtAmount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "debtAmount"
                  },
                  "delayDayCount": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "delayDayCount"
                  },
                  "loanId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "loanId"
                  },
                  "provisionAmount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "provisionAmount"
                  },
                  "provisionItemDetails": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "debtAmount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "debtAmount"
                        },
                        "debtItem": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "debtItem"
                        },
                        "followTypeProvisionId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "followTypeProvisionId"
                        },
                        "provisionAmount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "provisionAmount"
                        }
                      },
                      "required": [
                        "debtAmount",
                        "debtItem",
                        "followTypeProvisionId",
                        "provisionAmount"
                      ],
                      "x-aura-field-code": "provisionItemDetails"
                    }
                  },
                  "provisionRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "provisionRate"
                  }
                },
                "required": [
                  "customerId",
                  "debtAmount",
                  "delayDayCount",
                  "loanId",
                  "provisionAmount",
                  "provisionRate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 8,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-provision-item",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}/provision-item",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "LoanId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "CustomerId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "CustomerFollowDebtId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "DelayDayCount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "DebtAmount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProvisionAmount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProvisionRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_16",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على الإعانة: {0}",
                "en": "Provision cannot be found. :{0}",
                "tr": "Provizyon bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/provisions/{id}/provision-item/{provisionItemId}/status": {
      "put": {
        "operationId": "update-provision-item-status",
        "tags": [
          "provisions"
        ],
        "summary": "update-provision-item-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          },
          {
            "name": "provisionItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionItemId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "provisionItemStatus"
                  }
                },
                "required": [
                  "status"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-provision-item-status",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}/provision-item/{provisionItemId}/status",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/provisions/{id}/reversed-accounting-entry-id": {
      "put": {
        "operationId": "update-provision-reversed-account-entry-id",
        "tags": [
          "provisions"
        ],
        "summary": "update-provision-reversed-account-entry-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "reversedAccountingEntryId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "reversedAccountingEntryId"
                  },
                  "status": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "status",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "provision_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Active",
                          "labels": {
                            "ar": "نشط"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Passive",
                          "labels": {
                            "ar": "سلبي"
                          }
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "reversedAccountingEntryId",
                  "status"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-provision-reversed-account-entry-id",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}/reversed-accounting-entry-id",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ReversedAccountingEntryId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_16",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على الإعانة: {0}",
                "en": "Provision cannot be found. :{0}",
                "tr": "Provizyon bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/provisions/{id}/status": {
      "put": {
        "operationId": "update-provision-status",
        "tags": [
          "provisions"
        ],
        "summary": "update-provision-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "provisionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "status",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "provision_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Active",
                          "labels": {
                            "ar": "نشط"
                          }
                        },
                        {
                          "value": 2,
                          "name": "Passive",
                          "labels": {
                            "ar": "سلبي"
                          }
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "status"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-provision-status",
        "x-aura-domain": "legal-follow",
        "x-aura-raw-url-path": "provisions/{id}/status",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Status",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LGLFLLW_16",
              "status": 400,
              "message": {
                "ar": "لا يمكن العثور على الإعانة: {0}",
                "en": "Provision cannot be found. :{0}",
                "tr": "Provizyon bulunamıyor. :{0}"
              },
              "message_available": true,
              "constant_name": "PROVISION_NOT_FOUND"
            }
          ]
        }
      }
    }
  },
  "x-aura-collapsed-targets": {
    "note": "These operations are served by this domain but are documented under the forwarder that fronts them, because a forwarder and its target are one logical API and only the caller-facing path is an address. They are listed here so an endpoint of this service is findable from this service's document.",
    "count": 2
  },
  "components": {
    "schemas": {
      "PlatformError": {
        "type": "object",
        "title": "PlatformError",
        "description": "The body a mapped failure returns. One `error` object; `error.code` is the only place the code appears. Not every failure carries it — see the individual statuses.",
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "type": "object",
            "required": [
              "code",
              "message"
            ],
            "properties": {
              "code": {
                "type": "string",
                "description": "The platform error code. It is the identifier on the wire; a human-readable message for it is NOT guaranteed. The error catalog carries the codes seeded for this snapshot, with whichever of the published languages each one has text for, and many codes raised by services have no seeded entry at all. Where this portal knows which operations raise a code, they list it under `x-aura-error-codes`, each entry saying whether a message exists for it."
              },
              "message": {
                "type": "string",
                "description": "The resolved message for the code, in the language the request asked for."
              },
              "validationErrors": {
                "type": "array",
                "description": "Present on a validation failure only: one entry per rule that failed, each carrying its own code.",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                }
              },
              "businessErrors": {
                "type": "array",
                "description": "Present on a bulk failure only: one code/message pair per failed item.",
                "items": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "responses": {
      "Error400": {
        "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error408": {
        "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error409": {
        "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error500": {
        "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error502": {
        "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      }
    }
  }
}
