Find an API

Search public APIs with auth details & Postman guides

← All APIs

Amazon WorkDocs

amazonaws · Cloud

Cloud No Auth Free & Open cloud Sandbox

The Amazon WorkDocs API is designed for the following use cases: File Migration: File migration applications are supported for users who want to migrate their files from an on-premises or off-premises file system or service. Users can insert files into a user directory structure, as well as allow for basic metadata changes, such as modifications to the permissions of files. Security: Support security applications are supported for users who have additional s

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET DescribeUsers

Describes the specified users. You can describe all users or filter the results (for example, by status or organization). By default, Amazon WorkDocs returns the first 24 active or pending users. If there are more results, the response includes a marker that you can use to request the next

https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users?sort=USER_NAME&Limit=10&limit=10&order=ASCENDING&query=test&Marker=example&fields=example&marker=example&include=ALL&userIds=example&organizationId=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users?sort=USER_NAME&Limit=10&limit=10&order=ASCENDING&query=test&Marker=example&fields=example&marker=example&include=ALL&userIds=example&organizationId=example"
import requests
params = {
    "sort": "USER_NAME",
    "Limit": "10",
    "limit": "10",
    "order": "ASCENDING",
    "query": "test",
    "Marker": "example",
    "fields": "example",
    "marker": "example",
    "include": "ALL",
    "userIds": "example",
    "organizationId": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users');
url.searchParams.set('sort', 'USER_NAME');
url.searchParams.set('Limit', '10');
url.searchParams.set('limit', '10');
url.searchParams.set('order', 'ASCENDING');
url.searchParams.set('query', 'test');
url.searchParams.set('Marker', 'example');
url.searchParams.set('fields', 'example');
url.searchParams.set('marker', 'example');
url.searchParams.set('include', 'ALL');
url.searchParams.set('userIds', 'example');
url.searchParams.set('organizationId', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users")
	q := baseURL.Query()
	q.Set("sort", "USER_NAME")
	q.Set("Limit", "10")
	q.Set("limit", "10")
	q.Set("order", "ASCENDING")
	q.Set("query", "test")
	q.Set("Marker", "example")
	q.Set("fields", "example")
	q.Set("marker", "example")
	q.Set("include", "ALL")
	q.Set("userIds", "example")
	q.Set("organizationId", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users")
uri.query = URI.encode_www_form({
  "sort" => "USER_NAME",
  "Limit" => "10",
  "limit" => "10",
  "order" => "ASCENDING",
  "query" => "test",
  "Marker" => "example",
  "fields" => "example",
  "marker" => "example",
  "include" => "ALL",
  "userIds" => "example",
  "organizationId" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/users?" . http_build_query([
    "sort" => "USER_NAME",
    "Limit" => "10",
    "limit" => "10",
    "order" => "ASCENDING",
    "query" => "test",
    "Marker" => "example",
    "fields" => "example",
    "marker" => "example",
    "include" => "ALL",
    "userIds" => "example",
    "organizationId" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET DescribeActivities

Describes the user activities in a specified time period.

https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities?Limit=10&limit=10&Marker=example&marker=example&userId=example&endTime=example&startTime=example&resourceId=example&activityTypes=example&organizationId=example&includeIndirectActivities=true

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities?Limit=10&limit=10&Marker=example&marker=example&userId=example&endTime=example&startTime=example&resourceId=example&activityTypes=example&organizationId=example&includeIndirectActivities=true"
import requests
params = {
    "Limit": "10",
    "limit": "10",
    "Marker": "example",
    "marker": "example",
    "userId": "example",
    "endTime": "example",
    "startTime": "example",
    "resourceId": "example",
    "activityTypes": "example",
    "organizationId": "example",
    "includeIndirectActivities": "true"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities');
url.searchParams.set('Limit', '10');
url.searchParams.set('limit', '10');
url.searchParams.set('Marker', 'example');
url.searchParams.set('marker', 'example');
url.searchParams.set('userId', 'example');
url.searchParams.set('endTime', 'example');
url.searchParams.set('startTime', 'example');
url.searchParams.set('resourceId', 'example');
url.searchParams.set('activityTypes', 'example');
url.searchParams.set('organizationId', 'example');
url.searchParams.set('includeIndirectActivities', 'true');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities")
	q := baseURL.Query()
	q.Set("Limit", "10")
	q.Set("limit", "10")
	q.Set("Marker", "example")
	q.Set("marker", "example")
	q.Set("userId", "example")
	q.Set("endTime", "example")
	q.Set("startTime", "example")
	q.Set("resourceId", "example")
	q.Set("activityTypes", "example")
	q.Set("organizationId", "example")
	q.Set("includeIndirectActivities", "true")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities")
uri.query = URI.encode_www_form({
  "Limit" => "10",
  "limit" => "10",
  "Marker" => "example",
  "marker" => "example",
  "userId" => "example",
  "endTime" => "example",
  "startTime" => "example",
  "resourceId" => "example",
  "activityTypes" => "example",
  "organizationId" => "example",
  "includeIndirectActivities" => "true"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/activities?" . http_build_query([
    "Limit" => "10",
    "limit" => "10",
    "Marker" => "example",
    "marker" => "example",
    "userId" => "example",
    "endTime" => "example",
    "startTime" => "example",
    "resourceId" => "example",
    "activityTypes" => "example",
    "organizationId" => "example",
    "includeIndirectActivities" => "true"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET DescribeGroups

Describes the groups specified by the query. Groups are defined by the underlying Active Directory.

https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery?Limit=10&limit=10&Marker=example&marker=example&searchQuery=example&organizationId=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery?Limit=10&limit=10&Marker=example&marker=example&searchQuery=example&organizationId=example"
import requests
params = {
    "Limit": "10",
    "limit": "10",
    "Marker": "example",
    "marker": "example",
    "searchQuery": "example",
    "organizationId": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery');
url.searchParams.set('Limit', '10');
url.searchParams.set('limit', '10');
url.searchParams.set('Marker', 'example');
url.searchParams.set('marker', 'example');
url.searchParams.set('searchQuery', 'example');
url.searchParams.set('organizationId', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery")
	q := baseURL.Query()
	q.Set("Limit", "10")
	q.Set("limit", "10")
	q.Set("Marker", "example")
	q.Set("marker", "example")
	q.Set("searchQuery", "example")
	q.Set("organizationId", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery")
uri.query = URI.encode_www_form({
  "Limit" => "10",
  "limit" => "10",
  "Marker" => "example",
  "marker" => "example",
  "searchQuery" => "example",
  "organizationId" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/workdocs/2016-05-01/api/v1/groups#searchQuery?" . http_build_query([
    "Limit" => "10",
    "limit" => "10",
    "Marker" => "example",
    "marker" => "example",
    "searchQuery" => "example",
    "organizationId" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with Amazon WorkDocs?

Amazon WorkDocs is a Cloud API. Developers commonly use cloud APIs for:

  • provisioning and managing cloud infrastructure
  • automating deployments and container orchestration
  • monitoring uptime and performance metrics
  • managing storage buckets and databases
  • setting up auto-scaling and load balancing

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Amazon WorkDocs is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗