{
  "format": "dataset-manifest/1",
  "slug": "peer-to-peer-insurance-platform",
  "version": 1,
  "seed": "peer-to-peer-insurance-platform:1",
  "spec": {
    "format": "dataset/1",
    "slug": "peer-to-peer-insurance-platform",
    "name": "Peer Insurance Activity Log",
    "tagline": "Activity logs for users, claims, payments, feedback, and policies in a peer-to-peer insurance platform.",
    "description": "Users participate in a peer-to-peer insurance platform, engaging in activities like submitting claims and making premium payments. This dataset captures the interactions and transactions within the community, allowing for analysis of user behavior and risk assessment. By examining the relationships between claims, payments, and user feedback, stakeholders can identify trends, such as clusters of high-risk users and popular policy types. The data reveals insights into user engagement, highlighting how often users maintain their premium payments and the rarity of fraud detection. This synthetic dataset serves as a practical resource for testing analytics and ETL processes, providing a realistic view of peer-to-peer insurance dynamics.",
    "domain": "insurance",
    "shape": "event-log",
    "useCases": [
      "analytics-demo",
      "etl-pipelines"
    ],
    "keywords": [
      "peer-to-peer insurance",
      "claims",
      "premium payments",
      "user feedback",
      "fraud detection",
      "policy types"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "Each row represents a user in the platform, linking to their activities and interactions. Users can submit claims, make payments, and provide feedback.",
        "rows": 200,
        "columns": {
          "user_id": {
            "kind": "pk",
            "description": "Unique identifier for the user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "The user's full name.",
            "nullable": true
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "The user's email address for communication.",
            "nullable": true
          },
          "join_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the user joined the platform.",
            "trend": "growing"
          }
        }
      },
      "claims": {
        "description": "This table records claims submitted by users, linking back to the users table. It provides insights into the frequency and nature of claims made.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "claim_id": {
            "kind": "pk",
            "description": "Unique identifier for each claim."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.user_id",
            "description": "The ID of the user who submitted the claim."
          },
          "claim_amount": {
            "kind": "decimal",
            "min": 100,
            "max": 5000,
            "description": "The amount claimed by the user.",
            "nullable": true
          },
          "claim_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the claim was submitted.",
            "nullable": true,
            "when": {
              "column": "status",
              "in": [
                "approved",
                "denied"
              ]
            },
            "trend": "seasonal"
          },
          "status": {
            "kind": "enum",
            "values": [
              "pending",
              "approved",
              "denied"
            ],
            "description": "The current status of the claim."
          }
        }
      },
      "payments": {
        "description": "This table captures payment transactions made by users for their insurance premiums, linked to the users table.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 10,
          "skew": "long-tail"
        },
        "columns": {
          "payment_id": {
            "kind": "pk",
            "description": "Unique identifier for each payment."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.user_id",
            "description": "The ID of the user making the payment."
          },
          "payment_amount": {
            "kind": "decimal",
            "min": 10,
            "max": 1000,
            "description": "The amount paid for the insurance premium.",
            "nullable": true
          },
          "payment_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the payment was made.",
            "trend": "growing"
          }
        }
      },
      "feedback": {
        "description": "Feedback provided by users regarding their experiences and the platform's services, linked to the users table.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 0,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "feedback_id": {
            "kind": "pk",
            "description": "Unique identifier for each feedback entry."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.user_id",
            "description": "The ID of the user providing feedback."
          },
          "feedback_text": {
            "kind": "words",
            "max": 100,
            "description": "The user's feedback message.",
            "nullable": true
          },
          "feedback_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the feedback was submitted.",
            "trend": "growing"
          }
        }
      },
      "policies": {
        "description": "This table lists different insurance policies available in the platform, including their types and coverage details.",
        "rows": 50,
        "columns": {
          "policy_id": {
            "kind": "pk",
            "description": "Unique identifier for the insurance policy."
          },
          "policy_type": {
            "kind": "enum",
            "values": [
              "health",
              "property",
              "auto",
              "life"
            ],
            "description": "Type of insurance policy offered."
          },
          "coverage_amount": {
            "kind": "decimal",
            "min": 1000,
            "max": 100000,
            "description": "Total coverage amount provided by the policy.",
            "nullable": true
          },
          "premium": {
            "kind": "decimal",
            "min": 50,
            "max": 5000,
            "description": "The premium amount for the policy.",
            "nullable": true
          },
          "creation_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the policy was created.",
            "nullable": true,
            "when": {
              "column": "policy_type",
              "in": [
                "health",
                "property",
                "auto",
                "life"
              ]
            },
            "trend": "growing"
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "timestamped",
      "nullable"
    ],
    "analysisQuestions": [
      "How often do users submit claims, and what are the common claim amounts?",
      "What percentage of claims are approved versus denied over time?",
      "Which types of policies are most popular among users?",
      "Are there specific user demographics that correlate with higher claim amounts?",
      "How does feedback from users vary by policy type?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users and Claims",
        "sql": "SELECT u.full_name, c.claim_amount FROM users u JOIN claims c ON u.user_id = c.user_id;",
        "dialect": "postgres"
      },
      {
        "title": "Aggregate Claims by Status",
        "sql": "SELECT status, COUNT(*) FROM claims GROUP BY status;",
        "dialect": "postgres"
      },
      {
        "title": "Payments Over Time",
        "sql": "SELECT DATE_TRUNC('month', payment_date) AS month, SUM(payment_amount) FROM payments GROUP BY month ORDER BY month;",
        "dialect": "postgres"
      },
      {
        "title": "User Feedback Analysis",
        "sql": "SELECT u.full_name, COUNT(f.feedback_id) as feedback_count FROM users u LEFT JOIN feedback f ON u.user_id = f.user_id GROUP BY u.full_name;",
        "dialect": "postgres"
      },
      {
        "title": "Claims and Payments Correlation",
        "sql": "SELECT c.claim_amount, p.payment_amount FROM claims c JOIN payments p ON c.user_id = p.user_id WHERE c.status = 'approved';",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Insurance Analysts",
        "body": "Insurance analysts can leverage the dataset to identify trends in user claims and payments, helping them assess the overall health of the peer-to-peer insurance model. By analyzing user behavior, they can spot potential areas for improvement."
      },
      {
        "title": "Data Engineers",
        "body": "Data engineers working on ETL processes can use this dataset to test data pipelines, ensuring that data is correctly transformed and loaded into data warehouses. They can simulate various data scenarios around user interactions and claims."
      },
      {
        "title": "Product Managers",
        "body": "Product managers can utilize the data to understand customer feedback and its relation to policy types. This insight can inform product development and help in tailoring offerings to better meet user needs."
      },
      {
        "title": "Actuaries",
        "body": "Actuaries can use the information in this dataset to perform risk assessments based on user claims and payment behaviors. They can analyze the correlation between different user demographics and the likelihood of claims."
      }
    ]
  },
  "counts": {
    "policies": 50,
    "users": 200,
    "claims": 488,
    "feedback": 196,
    "payments": 750
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 18,
          "distinct": 180,
          "min": "Alice Shah",
          "max": "Zoe Wang"
        },
        "email": {
          "nulls": 41,
          "distinct": 158
        },
        "join_date": {
          "nulls": 0,
          "distinct": 192,
          "min": "2020-01-27",
          "max": "2023-12-27"
        }
      }
    },
    "claims": {
      "rows": 488,
      "columns": {
        "claim_id": {
          "nulls": 0,
          "distinct": 488,
          "min": 1,
          "max": 488
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "claim_amount": {
          "nulls": 57,
          "distinct": 431,
          "min": 103.69,
          "max": 4996.93
        },
        "claim_date": {
          "nulls": 158,
          "distinct": 293,
          "min": "2020-01-02",
          "max": "2023-12-31"
        },
        "status": {
          "nulls": 0,
          "distinct": 3,
          "min": "approved",
          "max": "pending"
        }
      }
    },
    "payments": {
      "rows": 750,
      "columns": {
        "payment_id": {
          "nulls": 0,
          "distinct": 750,
          "min": 1,
          "max": 750
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "payment_amount": {
          "nulls": 88,
          "distinct": 660,
          "min": 13.63,
          "max": 998.95
        },
        "payment_date": {
          "nulls": 0,
          "distinct": 586,
          "min": "2020-01-01",
          "max": "2023-12-28"
        }
      }
    },
    "feedback": {
      "rows": 196,
      "columns": {
        "feedback_id": {
          "nulls": 0,
          "distinct": 196,
          "min": 1,
          "max": 196
        },
        "user_id": {
          "nulls": 0,
          "distinct": 106,
          "min": 4,
          "max": 200
        },
        "feedback_text": {
          "nulls": 16,
          "distinct": 180
        },
        "feedback_date": {
          "nulls": 0,
          "distinct": 180,
          "min": "2020-01-11",
          "max": "2023-12-24"
        }
      }
    },
    "policies": {
      "rows": 50,
      "columns": {
        "policy_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "policy_type": {
          "nulls": 0,
          "distinct": 4,
          "min": "auto",
          "max": "property"
        },
        "coverage_amount": {
          "nulls": 8,
          "distinct": 42,
          "min": 2790.52,
          "max": 99968.15
        },
        "premium": {
          "nulls": 7,
          "distinct": 43,
          "min": 143.1,
          "max": 4988.72
        },
        "creation_date": {
          "nulls": 0,
          "distinct": 50,
          "min": "2020-03-05",
          "max": "2023-11-25"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/policies.csv",
      "format": "csv",
      "table": "policies",
      "key": "datasets/peer-to-peer-insurance-platform/v1/csv/policies.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/csv/policies.csv",
      "bytes": 1861,
      "sha256": "771c10d10cb0e1d4905c04f3c689657023b409b1015e43c002b662a50cb68a85",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/peer-to-peer-insurance-platform/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/csv/users.csv",
      "bytes": 9247,
      "sha256": "ef7375b0dd9a8bb4c7f57ff408204291ba3450ab8fb617e40bd5b4784de7c8fc",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/claims.csv",
      "format": "csv",
      "table": "claims",
      "key": "datasets/peer-to-peer-insurance-platform/v1/csv/claims.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/csv/claims.csv",
      "bytes": 15171,
      "sha256": "ee249bdab218ffdce1befdadacb7a9d797294b6d0f7949600358ecb8e23f2877",
      "rows": 488,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/feedback.csv",
      "format": "csv",
      "table": "feedback",
      "key": "datasets/peer-to-peer-insurance-platform/v1/csv/feedback.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/csv/feedback.csv",
      "bytes": 62560,
      "sha256": "f6d9bc5c930ec148c110c3833145326eb624e765c6e88bb5580c72e7be698bff",
      "rows": 196,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/payments.csv",
      "format": "csv",
      "table": "payments",
      "key": "datasets/peer-to-peer-insurance-platform/v1/csv/payments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/csv/payments.csv",
      "bytes": 19186,
      "sha256": "c9272657b5ee84dbc6228d48874bea0ec0f443795a2bbe89fc1f96685578f354",
      "rows": 750,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "peer-to-peer-insurance-platform.json",
      "format": "json",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/peer-to-peer-insurance-platform.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/peer-to-peer-insurance-platform.json",
      "bytes": 283629,
      "sha256": "d6dc7bfa8166adc368a0894c5293a0d12ebd19d750adae2129bfc21e7115fb07",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/sql/postgres.sql",
      "bytes": 133358,
      "sha256": "a6f9f59e3e345caa2985ce8acc2459fd36366acadbbf412009fde375a604243f",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/sql/mysql.sql",
      "bytes": 132755,
      "sha256": "21fd58b675dd71a2fe24060480a1b65122427db52173db0f34e5c723defb6f4e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/sql/mssql.sql",
      "bytes": 135640,
      "sha256": "64e0ed329ad17b8dbab38714f4dedebddedd8612ceaa7d117437c9c666f45789",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/sql/sqlite.sql",
      "bytes": 132614,
      "sha256": "862bfd9668585a5d0a3fb0292aad99f61d5255c1f3d195ae655da00ccab9ef55",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/prisma/seed.ts",
      "bytes": 235686,
      "sha256": "759c6062d59c2e4af18f299dfdf70d18de8e211ff1ac72ee8756cd6b03401c3a",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/peer-to-peer-insurance-platform/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/peer-to-peer-insurance-platform/v1/django/fixtures.json",
      "bytes": 342352,
      "sha256": "9929fc482a23c8ae408b8f1bef4d210324c625e066c0191fbb8af38003310ec6",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788767732353,
  "updatedAt": 1788767732353
}
