Blockchain Messages Format and Schemae

From OIP Wiki
Revision as of 23:40, 2 January 2018 by Devon (talk | contribs)
Jump to: navigation, search

Multipart Messages

If any of the messages created below are larger than the 528 byte tx-comments currently supported by Florincoin, then the message will be split up into a Multipart message.

You can find information on how Multipart messages are formed here.

Registration Messages

Register Publisher

Plaintext data, stored in a transaction comment.

To view the JSON schema for Register Publisher, click Expand ->

{
    "oip-041": {
        "pub": {
            "alias": "$PublisherAlias",
            "address": "$PublisherAddress",
            "timestamp": $UnixTime,
            "info": {
                "emailmd5": "$md5HashOfEmail",
                "avatarNetwork": "$IPFSorBittorrentorHTTP"
                "avatar": "$NetworkAddressOfAvatarImage
                "bitmessage": "$bitmessageAddress",
                },
            "verification": {
                "IMDB": "$IMDBArtistUrl",
                "MusicBrainz": "$MusicBrainzArtistURL",
                "Twitter": "$TwitterVerificationURL",
                "Facebook": $FacebookVerificationURL"
                }
            },
        "signature": "$RegisterPublisherSignature"
    }
}

deprecated Register Publisher schema

A list of Registered Publishers can be found at Alexandria's hosted API endpoint

Edit Publisher

Plaintext data, stored in a transaction comment.

To view the JSON schema for Edit Publisher, click Expand ->

{
    "oip-041": {
        "editPub": {
            "txid": "string",
            "timestamp": int,
            "patch": {
                // Squashed Edit of JSON Patch Schema https://tools.ietf.org/html/rfc6902
            }
        }
    },
    "signature": "string"
}

Register Promoter

Plaintext data, stored in a transaction comment.

To view the JSON schema for Register Promoter, click Expand ->

{  
    "oip-041":{  
        "promoter":{  
            "BTCaddress":"string",
            "LTCaddress":"string",
            "FLOaddress":"string",
            "version":1,
            "social":{  
                "facebook":"string",
                "twitter":"string",
                "instagram":"string"
            }
        },
        "signature":"string"
    }
}

deprecated Register Promoter schema

A list of Registered Promoters can be found at Alexandria's hosted API endpoint

Register Autominer

Plaintext data, stored in a transaction comment.

To view the JSON schema for Register Autominer, click Expand ->

{
    "oip-041": {
        "autominer": {
            "FLOaddress": "string",
            "BTCaddress": "string",
            "endpointURL": "string",
            "version": 2
        },
        "signature": "string"
    }
}

deprecated Register Autominer schema

A list of Registered Autominers can be found at Alexandria's hosted API endpoint

Register Autominer Pool

Plaintext data, stored in a transaction comment. You can view information about the Register Autominer Pool Schema here A list of Registered Autominer Pools can be found at Alexandria's hosted API endpoint

Register Retailer

Plaintext data, stored in a transaction comment.

To view the JSON schema for Register Retailer, click Expand ->

{
    "oip-041": {
        "retailer": {
            "FLOaddress": "string",
            "FLOaddress": "string",
            "http-url": "string",
            "version": 1,
            "opt": {
                "name": "string",
                "minimum-share": int
            }
        },
        "signature": "string"
    }
}

deprecated Register Retailer schema

A list of Registered Retailers can be found at Alexandria's hosted API endpoint

Artifact Messages

Artifact Publish

Plaintext data, stored in one or more transaction comments, using the multipart scheme.

To view the JSON schema for Artifact Publishing, click Expand ->

{
    "oip-041":{
        "artifact":{
            "publisher": "string",
            "timestamp": 10 digit int,
            "type": "string",
            "info":{
                "title": "string",
                "description": "string",
                "year": 4 digit int,
                "extraInfo":{
                    "artist": "string",
                    "company": "string",
                    "tags":[
                        "string",
                        "string"
                        ]
                    }
                },
            "payment":{
                "fiat": "string",
                "scale": int,
                "sugTip":[
                    int,
                    int,
                    int
                    ],
                "addresses": {
                    "three letter string":"string",
                    "three letter string":"string"
                },
                "tokens": {
                    "STRING": int,
                    "STRING": int
                }
                },
            "storage":{
                "network": "string",
                "location": "string,
                "files":[
                    {
                        "disBuy": boolean,
                        "disPlay": boolean,
                        "dName": "string",
                        "duration": int,
                        "fName": "string",
                        "fSize": int,
                        "sugPlay": "int",
                        "minPlay": "int",
                        "sugBuy": "int",
                        "minBuy": "int",
                        "disPer": "int",
                        "promo": "int",
                        "retail": "int",
                        "ptpFT": int,
                        "ptpDT": int,
                        "ptpDA": int,
                        "type": "string",
                        "tokenlyID": "string"
                    }
                },
            "signature": "string"
        }
}

A list of Published Artifacts can be found at Alexandria's hosted API endpoint

Artifact Edit

To view the JSON schema for Artifact Edits, click Expand ->

{
    "oip-041": {
        "editArtifact": {
            "txid": "string",
            "timestamp": int,
            "patch": {
                // Squashed Edit of JSON Patch Schema https://tools.ietf.org/html/rfc6902
            }
        }
    },
    "signature": "string"
}

Artifact Transfer

To view the JSON schema for Artifact Transfers, click Expand ->

{
    "oip-041": {
    "transferArtifact": {
        "txid": "string",
            "to": "string",
            "from": "string",
            "timestamp": int
        },
        "signature": "string"
    }
}

Artifact Deactivate

To view the JSON schema for Artifact Deactivation, click Expand ->

{
    "oip-041": {
        "deactivateArtifact": {
            "txid": "string",
            "timestamp": int
        },
        "signature": "string"
    }
}

Historian Messages

Historian Datapoint

Plaintext data, stored in the block reward (coinbase) transaction comment.

Historian Block Reward

Plaintext data, stored the transaction comments. Historian Block Reward Message Format