List shares visible to the authenticated account.
GET
/v1/shares
const url = 'https://api.share2.us/v1/shares?status=created&limit=50';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.share2.us/v1/shares?status=created&limit=50' \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”status
string
limit
integer
cursor
string
Responses
Section titled “Responses”Shares page.
Media typeapplication/json
object
shares
required
Array<object>
object
id
required
string
public_id
required
string
url
required
string format: uri
filename
required
string
size_bytes
required
integer format: int64
content_class
string
state
required
string
download_count
integer
max_downloads
integer
password_protected
boolean
recipient_restricted
What the share ACTUALLY is. On the create response this is what lets a client that asked for visibility: private tell it got one: an older server ignores the field and returns a 201 with a PUBLIC link, so an ABSENT value must be read as “unknown”, never as false.
boolean
encrypted
boolean
scan_status
Malware scan outcome. skipped means the file was not scanned (scanning off, encrypted, or scanner unavailable) and is served with a visible warning; only a real dirty verdict blocks a share (ADR-013).
string
expires_at
required
string format: date-time
created_at
required
string format: date-time
next_cursor
string | null
Example
{ "shares": [ { "content_class": "text", "state": "created", "scan_status": "pending" } ]}default
Section titled “default”Standard error envelope.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
request_id
required
string
Example
{ "error": { "code": "quota_exceeded" }}