POST documents add_user
curl --request POST \
--url https://app.onecodex.com/api/v1/documents/{id}/add_user \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"user": {
"__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890"
}
}
'import requests
url = "https://app.onecodex.com/api/v1/documents/{id}/add_user"
payload = { "user": { "__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890" } }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({user: {__DOLLAR_REF__: '/api/v1/users/a1b2c3d4e5f67890'}})
};
fetch('https://app.onecodex.com/api/v1/documents/{id}/add_user', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.onecodex.com/api/v1/documents/{id}/add_user",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'user' => [
'__DOLLAR_REF__' => '/api/v1/users/a1b2c3d4e5f67890'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.onecodex.com/api/v1/documents/{id}/add_user"
payload := strings.NewReader("{\n \"user\": {\n \"__DOLLAR_REF__\": \"/api/v1/users/a1b2c3d4e5f67890\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.onecodex.com/api/v1/documents/{id}/add_user")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"user\": {\n \"__DOLLAR_REF__\": \"/api/v1/users/a1b2c3d4e5f67890\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.onecodex.com/api/v1/documents/{id}/add_user")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"user\": {\n \"__DOLLAR_REF__\": \"/api/v1/users/a1b2c3d4e5f67890\"\n }\n}"
response = http.request(request)
puts response.read_body{
"$uri": "/api/v1/documents/0d77065796f8d173",
"created_at": "2023-11-07T05:31:56Z",
"downloaders": [
{
"__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890"
}
],
"filename": "<string>",
"size": 2,
"uploader": {
"__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890"
}
}Sharing
Share A Document With A User
POST
/
api
/
v1
/
documents
/
{id}
/
add_user
POST documents add_user
curl --request POST \
--url https://app.onecodex.com/api/v1/documents/{id}/add_user \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"user": {
"__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890"
}
}
'import requests
url = "https://app.onecodex.com/api/v1/documents/{id}/add_user"
payload = { "user": { "__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890" } }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({user: {__DOLLAR_REF__: '/api/v1/users/a1b2c3d4e5f67890'}})
};
fetch('https://app.onecodex.com/api/v1/documents/{id}/add_user', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.onecodex.com/api/v1/documents/{id}/add_user",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'user' => [
'__DOLLAR_REF__' => '/api/v1/users/a1b2c3d4e5f67890'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.onecodex.com/api/v1/documents/{id}/add_user"
payload := strings.NewReader("{\n \"user\": {\n \"__DOLLAR_REF__\": \"/api/v1/users/a1b2c3d4e5f67890\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.onecodex.com/api/v1/documents/{id}/add_user")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"user\": {\n \"__DOLLAR_REF__\": \"/api/v1/users/a1b2c3d4e5f67890\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.onecodex.com/api/v1/documents/{id}/add_user")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"user\": {\n \"__DOLLAR_REF__\": \"/api/v1/users/a1b2c3d4e5f67890\"\n }\n}"
response = http.request(request)
puts response.read_body{
"$uri": "/api/v1/documents/0d77065796f8d173",
"created_at": "2023-11-07T05:31:56Z",
"downloaders": [
{
"__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890"
}
],
"filename": "<string>",
"size": 2,
"uploader": {
"__DOLLAR_REF__": "/api/v1/users/a1b2c3d4e5f67890"
}
}Grant another user download access to a Document. The caller must be the document’s uploader (or have org-level admin permission). The added user appears in the document’s
downloaders list.Authorizations
Path Parameters
Body
application/json
Show child attributes
Show child attributes
Response
200 - application/json
OK
Pattern:
^/api/v1/documents/[a-f0-9]{16}$Example:
"/api/v1/documents/0d77065796f8d173"
An (optionally empty) array of references to users that the document has been shared with. These users are able to download (but not modify) the document.
Show child attributes
Show child attributes
The document filename (e.g., "report.pdf")
The size of the document in bytes.
Required range:
x >= 1A reference to the user that uploaded and owns the document, e.g., {"$ref": "/api/v1/users/5891ee65711c4d5e"}. Only owners can modify a document (with some exceptions in the case of organization accounts configured for multiple users - please contact us if you'd like to discuss this use case).
Show child attributes
Show child attributes
⌘I

