سطر 1: |
سطر 1: |
| <div dir="ltr" style="direction: ltr;"> | | <div dir="ltr" style="direction: ltr;"> |
| | | |
− | === Data structures === | + | === Basic data structures === |
− | Listing data record is comprised of the following two data structures: | + | Listing data record is comprised of the following two data structures, that are used to describe an entry through [[../API|API]] actions: |
| | | |
| === <var>package-info</var> === | | === <var>package-info</var> === |
سطر 23: |
سطر 23: |
| ; <var>email-address</var> <nowiki>:</nowiki> [[#string(email-address)|string(email-address)]] | | ; <var>email-address</var> <nowiki>:</nowiki> [[#string(email-address)|string(email-address)]] |
| : email address identifies a user who enlists an item. It is used to communicate with the user to confirm his listing, and to confirm the removal of a listing. It's a user's means to control his listings. It could be made invisible to viewers of a listing unless no phone number is given, in which case it is the only means to contact the user by those interested in a listing. | | : email address identifies a user who enlists an item. It is used to communicate with the user to confirm his listing, and to confirm the removal of a listing. It's a user's means to control his listings. It could be made invisible to viewers of a listing unless no phone number is given, in which case it is the only means to contact the user by those interested in a listing. |
− | ; <var>name</var> <nowiki>:</nowiki> string | + | ; <var>nickname</var> <nowiki>:</nowiki> string |
| : A friendly name to greet the user by those contacting regarding a listing. | | : A friendly name to greet the user by those contacting regarding a listing. |
| ; <var>phone-number</var> <nowiki>:</nowiki> [[#string(phone-number)|string(phone-number)]] | | ; <var>phone-number</var> <nowiki>:</nowiki> [[#string(phone-number)|string(phone-number)]] |
سطر 31: |
سطر 31: |
| | | |
| | | |
− | === Records === | + | === Stored records === |
| + | Stored data preserves some operational information in addition to the basic entry structure: |
| == Listings == | | == Listings == |
| + | ; id |
| + | : <code>base62(sha256(<var>email-address</var> . sha256(<var>name</var> . <var>expiry</var> . <var>submission-date</var>)))</code> |
| + | : entry's unique identifier |
| ; [[#package-info|package-info]] | | ; [[#package-info|package-info]] |
| ; [[#contact-info|contact-info]] | | ; [[#contact-info|contact-info]] |
سطر 39: |
سطر 43: |
| | | |
| == Archive == | | == Archive == |
| + | ; id |
| ; [[#package-info|package-info]] | | ; [[#package-info|package-info]] |
| ; [[#contact-info|contact-info]] | | ; [[#contact-info|contact-info]] |
| : except: | | : except: |
− | :: <var>name</var> is omitted | + | :: <var>nickname</var> is omitted |
− | :: <var>email-address</var> is replaced with <code>base62(sha512(email-address))</code> | + | :: <var>email-address</var> is replaced with <code>base62(sha256(<var>email-address</var>))</code> |
− | :: <var>phone-number</var> is replaces with <code>base62(sha512(phone-number))</code> | + | :: <var>phone-number</var> is replaces with <code>base62(sha256(<var>phone-number</var>))</code> |
− | ; removal-date : timestamp | + | ; submission-date |
| + | ; instatement-date |
| + | ; removal-date |
| ; <var>removal-reason</var> : possible values: | | ; <var>removal-reason</var> : possible values: |
| :; <kbd>unconfirmed</kbd> : | | :; <kbd>unconfirmed</kbd> : |