package models import "encoding/json" func UnmarshalE621Post(data []byte) (E621Post, error) { var r E621Post err := json.Unmarshal(data, &r) return r, err } func (r *E621Post) Marshal() ([]byte, error) { return json.Marshal(r) } type E621Post struct { Posts []Post `json:"posts"` } type Post struct { ID int64 `json:"id"` CreatedAt string `json:"created_at"` UpdatedAt string `json:"updated_at"` File File `json:"file"` Preview Preview `json:"preview"` Sample Sample `json:"sample"` Score Score `json:"score"` Tags Tags `json:"tags"` LockedTags []interface{} `json:"locked_tags"` ChangeSeq int64 `json:"change_seq"` Flags Flags `json:"flags"` Rating string `json:"rating"` FavCount int64 `json:"fav_count"` Sources []string `json:"sources"` Pools []interface{} `json:"pools"` Relationships Relationships `json:"relationships"` ApproverID *int64 `json:"approver_id"` UploaderID int64 `json:"uploader_id"` Description string `json:"description"` CommentCount int64 `json:"comment_count"` IsFavorited bool `json:"is_favorited"` HasNotes bool `json:"has_notes"` Duration interface{} `json:"duration"` } type File struct { Width int64 `json:"width"` Height int64 `json:"height"` EXT string `json:"ext"` Size int64 `json:"size"` Md5 string `json:"md5"` URL string `json:"url"` } type Flags struct { Pending bool `json:"pending"` Flagged bool `json:"flagged"` NoteLocked bool `json:"note_locked"` StatusLocked bool `json:"status_locked"` RatingLocked bool `json:"rating_locked"` Deleted bool `json:"deleted"` } type Preview struct { Width int64 `json:"width"` Height int64 `json:"height"` URL string `json:"url"` } type Relationships struct { ParentID interface{} `json:"parent_id"` HasChildren bool `json:"has_children"` HasActiveChildren bool `json:"has_active_children"` Children []interface{} `json:"children"` } type Sample struct { Has bool `json:"has"` Height int64 `json:"height"` Width int64 `json:"width"` URL string `json:"url"` Alternates Alternates `json:"alternates"` } type Alternates struct { } type Score struct { Up int64 `json:"up"` Down int64 `json:"down"` Total int64 `json:"total"` } type Tags struct { General []string `json:"general"` Species []string `json:"species"` Character []string `json:"character"` Copyright []string `json:"copyright"` Artist []string `json:"artist"` Invalid []interface{} `json:"invalid"` Lore []interface{} `json:"lore"` Meta []string `json:"meta"` }