{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/assignar/main/json-schema/assignar-form-result-schema.json",
  "title": "FormResult",
  "description": "Full form result including `result_data`, as returned by `GET /form-results/{formResultId}`.",
  "x-generated": "2026-09-26",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/assignar-openapi.yaml#/components/schemas/FormResult",
  "allOf": [
    {
      "$ref": "#/$defs/FormResultFields"
    },
    {
      "type": "object",
      "properties": {
        "result_data": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:number": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "number"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:text": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:textarea": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:date": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:time": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:datetime": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:datetime": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:signature": {
                    "type": "integer"
                  },
                  "attachment": {
                    "type": "string"
                  },
                  "filepath": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:imagecapture": {
                    "type": "integer"
                  },
                  "filenames": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "filepaths": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "attachments": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:file": {
                    "type": "integer"
                  },
                  "filenames": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "filepaths": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "attachments": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:dropahead": {
                    "type": "integer"
                  },
                  "label": {
                    "type": "string"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:radio": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  },
                  "other": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:checkbox": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "other": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:dropdown": {
                    "type": "integer"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:fieldgroup": {
                    "type": "integer"
                  },
                  "results": {
                    "type": "array",
                    "items": {
                      "type": "object"
                    }
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "field_id": {
                    "type": "integer"
                  },
                  "$type:array": {
                    "type": "integer"
                  },
                  "results": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field_id": {
                          "type": "integer"
                        },
                        "$type:fieldgroup": {
                          "type": "integer"
                        },
                        "results": {
                          "type": "array",
                          "items": {
                            "type": "object"
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "$ref": "#/$defs/FormResultTail"
    }
  ],
  "$defs": {
    "FormResultFields": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "form_id": {
          "type": "integer"
        },
        "latitude": {
          "type": "number",
          "format": "double"
        },
        "longitude": {
          "type": "number",
          "format": "double"
        },
        "client_id": {
          "type": "integer"
        },
        "project_id": {
          "type": "integer"
        },
        "asset_id": {
          "type": "integer"
        },
        "worker_id": {
          "type": "integer"
        },
        "supplier_id": {
          "type": "integer"
        },
        "order_id": {
          "type": "integer"
        },
        "date_created": {
          "type": "string",
          "format": "date-time"
        },
        "submitted_time": {
          "type": "string",
          "format": "date-time"
        },
        "modified_time": {
          "type": "string",
          "format": "date-time"
        },
        "modified_by": {
          "type": "integer"
        },
        "creator_id": {
          "type": "integer"
        },
        "status_id": {
          "type": "integer"
        },
        "assignee_id": {
          "type": "integer"
        },
        "order_resource_id": {
          "type": "integer"
        }
      }
    },
    "FormResultTail": {
      "type": "object",
      "properties": {
        "creator_name": {
          "type": "string"
        },
        "assignee_name": {
          "type": "string"
        },
        "form": {
          "type": "object",
          "properties": {
            "display_meta": {
              "type": "object",
              "properties": {
                "fields": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string"
                      },
                      "id": {
                        "type": "number"
                      },
                      "is_required": {
                        "type": "boolean"
                      },
                      "question": {
                        "type": "string"
                      },
                      "is_conditional": {
                        "type": "boolean"
                      },
                      "has_url": {
                        "type": "boolean"
                      }
                    }
                  }
                }
              }
            },
            "id": {
              "type": "integer"
            },
            "title": {
              "type": "string"
            }
          }
        },
        "creator": {
          "type": "object",
          "properties": {
            "full_name": {
              "type": "string"
            },
            "user_id": {
              "type": "integer"
            },
            "first_name": {
              "type": "string"
            },
            "last_name": {
              "type": "string"
            }
          }
        },
        "modifier": {
          "type": "object",
          "properties": {
            "full_name": {
              "type": "string"
            },
            "user_id": {
              "type": "integer"
            },
            "first_name": {
              "type": "string"
            },
            "last_name": {
              "type": "string"
            }
          }
        },
        "assignee": {
          "type": "object",
          "properties": {
            "full_name": {
              "type": "string"
            },
            "user_id": {
              "type": "integer"
            },
            "first_name": {
              "type": "string"
            },
            "last_name": {
              "type": "string"
            }
          }
        },
        "status": {
          "type": "object",
          "properties": {
            "id": {
              "type": "integer"
            },
            "label": {
              "type": "string"
            }
          }
        }
      }
    }
  }
}