{ "name": "Donation", "description": "A representaion of a donation to freeCodeCamp", "plural": "donations", "base": "PersistedModel", "idInjection": true, "scopes": {}, "indexes": {}, "options": { "validateUpsert": true }, "hidden": [], "remoting": {}, "http": {}, "properties": { "email": { "type": "string", "required": true, "description": "The email used to create the donation" }, "provider": { "type": "string", "required": true, "description": "The payment handler, paypal/stripe etc..." }, "amount": { "type": "number", "required": true, "description": "The donation amount in cents" }, "startDate": { "type": "DateString", "required": true }, "endDate": { "type": "DateString" }, "subscriptionId": { "type": "string", "required": true, "description": "The donation subscription id returned from the provider" }, "customerId": { "type": "string", "required": true, "description": "The providers reference for the donator" } }, "validations": [ { "amount": { "type": "number", "description": "Amount should be >= $1 (100c)", "min": 100 }, "facetName": "server" } ], "relations": { "user": { "type": "belongsTo", "model": "user", "foreignKey": "userId" } }, "acls": [], "methods": {} }