This book visually presents an illustrated collection of real-world Web APIs - All rigorously sans titre. There is no b
372 98 826KB
English Pages [100] Year 2021
Beautiful APIs
Cesare Pautasso
This book is for sale at https://leanpub.com/beautiful-apis This version was published on February 5, 2021. ©2021 Cesare Pautasso
Beautiful APIs
Cesare Pautasso
Preface This illustrated book presents a collection of Web APIs.
While there are many books on how to design good APIs, the goal of this book is to show a small sample of actual API designs so that we can learn from them.
The APIs we have represented are Web APIs: they come from the time when many attempted with very different results to use the HTTP protocol to remotely invoke software delivered as a service.
The diagrams you will find browsing this book show the structure of Web APIs represented as trees of resources. The bulbs attached along the branches of the tree indicate which methods can be applied to each resource.
Every API shown in this book existed at some point in time: while its description may have survived until today stored in some open-source code repository, the service behind it may no longer be available to be remotely invoked across the Web. There is absolutely no relationship between the former and the latter.
The APIs have been selected mainly due to their visual appearance.
We wish you to enjoy looking at these beautiful APIs.
ii
POST
search
1
POST
GET GET
events
{id}
2
GET GET
translate
braille
dots GET
html GET
image GET
unicode
3
GET GET
{debtorNo}
naturalperson GET
legalperson GET
postaladdress GET
Debtors
contactinfo GET
staticstics GET
otherinfo GET
idno
{debtorID}
4
GET GET
base
binary GET
hex GET
octal GET
cardinal currency
GET
GET
fact GET
is-cube GET
is-palindrome GET
is-square numbers
GET
is-triangle GET
nod
GET
chinese GET
numeral
egyptian roman
GET
GET
factors
GET
ordinal
GET
is-fermat-prime GET
pi
GET
is-fibonacci-prime GET
is-mersenne-prime prime
GET
is-partition-prime GET GET
random
is-pell-prime GET
is-perfect GET
is-prime
5
GET
market
batch GET
delayed-quote GET
earnings stock GET
financials GET
short-interest {symbol}
GET
list GET
news
last
{range}
GET
previous GET
quote GET
splits
{range} GET
symbol-directory ref-data
daily-list
GET
next-day-ex-date GET
tops GET
hist GET
book GET
system-event GET
deep
op-halt-status GET
security-event GET
auction GET
recent stats GET
historical GET
market
6
POST
GET
GET GET
benchmark
start
{name}
GET
GET GET
run
kill
{runId}
GET GET
recent
sessions
GET
total GET
connections
GET
all GET
recent GET
stats
total GET
custom GET
benchmark
GET
histogram
GET
agents GET GET
log
{agent} GET
shutdown GET
version
7
GET
GetPerVMTypeOneBootShutDownData GET
getAllVMTypesBootShutDownDataAvg GET
getAllVMTypesBootShutDownDataRegression GET
getPerVMTypeAllBootShutDownData GET
getandStoreRegressionValues POST
initUserConfig GET
listAllInstances GET
trainDataSetRegression
8
POST
down
GET
auto POST
up
GET
POST
create
GET
POST
delete GET
getinfo deployment
GET
getjson POST
rollback POST
update
GET
GET GET
getlog
log GET
index POST
create
GET
POST
delete pod GET
getinfo GET
getjson POST
create
GET
POST
delete service GET
getinfo GET
getjson POST
create
GET
POST
delete st GET
getinfo GET
getjson POST
create
GET
POST
delete sto GET
getinfo GET
getjson POST
user
login
GET
9
GET GET
docs
swagger-ui GET
autocomplete POST
besthitsearch POST
GET
disease
{disease} GET
drug
{DRUG_ID}
eco
{ECO_ID}
enrichment
targets
GET
private
POST
GET
quicksearch POST
GET
relation
platform
disease
{disease} GET
target
{target}
POST
POST
target
expression
GET
GET
{target} GET
POST
filter
association POST
GET
GET
POST
filter
evidence public
GET
GET
metrics GET
search
GET
ping swagger
GET GET
utils
stats GET
therapeuticareas GET
version
10
POST
add address
GET
info GET
award
list
flow
list
game
list
login
auth
GET
GET
POST
GET
info notice
GET
list POST
create express query
GET
pay POST
create recharge query
GET
GET
award room
GET
info GET
list POST
add suggest GET
list GET
test
info
user
info
GET
11
GET
autocomplete POST
besthitsearch GET
docs
POST
GET
disease
private
{disease} GET
eco
{ECO_ID}
enrichment
targets
POST
GET
quicksearch POST
GET
relation
disease
{disease} GET
target
{target}
POST
POST
target
expression
GET
platform GET
{target} GET
POST
filter
association
GET
GET
request_token auth
GET
validate_token POST
public
GET
POST
filter
evidence
GET
GET
search swagger
GET
ping
GET
GET
utils
stats GET
version
12
POST
create containers
GET
json DEL POST
{id}
attach GET
changes copy
exec
POST
POST
GET
export GET
json POST
kill GET
logs pause
POST
POST
resize?h POST
restart POST
start POST
stop GET
top unpause
POST
POST
wait
13
GET
POST POST
user POST
login GET GET
words
specific PATCH
word
{id} POST
repeat
GET
POST
tags POST
text
words
14
GET
last-day GET
last-month chart
{resource} GET
last-week GET
year
{yearNum} POST
change-{resource} edit
{deviceId}
GET
menu GET
GET
get-role
{userId}
get-subordinates
{userId}
login
GET
GET
hidden-data
{userId}
live-data
{userId}
GET
overview
POST
add preferences
{userId}
POST
remove GET
table
{userId}
device
{type}
sensor
{type}
user
all
GET
GET
GET
user
PUT
add GET
all GET
byId
{id} GET
byUsername
{username} GET
{id}
15
GET
whoami POST
GET
users
POST
{id}
GET
groups
POST
roles
PUT GET
PUT
{id}
GET
GET
PUT
{id}
GET
16
POST
users
DEL
GET
PUT
{id}
GET
17
DEL POST
employees
GET
PATCH
{employeeNo}
PUT GET
18
POST
DEL
GET
PUT
events
POST
{eventid}
GET
DEL
GET
PUT
things
{thingid}
GET
19
PUT
POST
DEL
GET
GET
licenses
{licenseID}
HEAD
POST
POST
types
GET
DEL
{typeID}
GET
20
OPTIONS
OPTIONS
POST
addresses
DEL
{id}
PUT GET
OPTIONS
customers
POST
OPTIONS
DEL PUT GET
{email}
OPTIONS
address
GET
21
POST
signup auth POST
login GET
messages
POST
GET
unread GET
sent DEL
{messageId}
GET
22
GET
api-docs POST
signup POST
login
accounts
GET POST
{accountId} POST
logout DEL
GET
PATCH
secrets
{secretId}
GET
23
POST
signup POST
login POST
uploadImage GET
POST
GET
user
{email} POST
updateEmail POST
updatePassword GET
POST
DEL GET GET
events
{eventId}
tag GET
untag
24
GET GET
clean-all
refresh GET
clean
{id} PUT GET
POST
path
{id}
GET DEL
GET
value
hiera
{id}
{certname} GET GET
hierarchy variable
{id} PUT
GET
POST
path
{id}
GET
GET GET
hierarchy POST
{id} GET GET
keys
{id}
25
POST
garages
DEL GET
{garageId}
DEL GET
cars
DEL
POST
GET
{carId}
PUT
26
POST
baseFolders
DEL GET
GET
DEL
DEL GET
PUT
{baseFolderName}
{subFolderName}
{fileName}
GET
27
GET GET
schemagroups
getSchemaById
{schema-id}
DEL PUT GET
{group-name}
DEL GET
schemas
DEL GET PUT POST
{schema-name}
GET
versions
DEL
{version-number}
GET
28
DEL
GET
POST
process api
{pid}
GET
GET
version GET
docs
indexhtml
29
GET
all POST
GET
PUT GET DEL POST
asset
{assetID}
event
publish GET
subscribe GET
docs GET
status GET
swaggerjson
30
POST
GET
DEL
orders
{id}
GET DEL PUT
{orderId}
POST
products
{productOrderId}
GET
DEL
GET
PUT
products
{code}
GET
POST
login users POST
register
31
POST
GET
v1
entrances
nearest PATCH
DEL GET POST
{id}
enter POST
exit POST
lock POST
unlock
32
PUT
POST
GET GET
conversations
batches GET
find_recipients POST
mark_all_as_read GET
unread_count PUT GET DEL POST
{id}
add_message POST
add_recipients POST
remove_messages
33
POST
GET
gameModes
queues
playerRankings
GET
POST
queues
{gameModeId}
GET
POST
PATCH
PATCH
{queueId}
GET
GET
POST
parties
GET
GET
PATCH
{playerRankingId}
GET
34
POST
add DEL
bookmark
delete GET
list GET
github
trending POST
forgot password
PUT
reset GET
user
PUT
profile
update POST
refresh POST
sign-in POST
sign-out POST
sign-up POST
verify
35
GET
ping DEL POST
users
manage
PUT
POST
login POST
invalidateToken
token
POST POST
validateToken
admin
GET
ping PUT
all
POST
tracking POST
info
{productId} POST
batch
36
POST
positions
POST
GET
GET
GET
DEL GET
POST
users
friends
{id}
PUT
GET
reports
locations POST
measurement bodytemp
GET
POST
healthDataSet
37
POST
DEL
GET
PUT
recipe
{id}
GET DEL PUT
rate
{id}
POST
POST
search GET
recipe
{id}
favorite
{id}
cook
GET
PUT
POST
GET DEL
icebox
{id}
{ingredient}
38
PUT
users
GET
DEL GET PUT
transfer
users({email})
GET
orders PUT
restaurants
GET
DEL GET
PUT
dishes
restaurants({name})
GET
DEL
dishes({dishName}) PATCH
DEL
orders
PUT GET
GET
balancestatus
39
POST
DEL PUT GET GET
release
testsuites
{releaseid}
POST
DEL
testsuite
{testsuiteid}
GET
GET
testcases GET
defects PUT
releasesuite
{releasesuiteid}
POST POST
releases
testsuites
40
GET PUT
POST
GET
accounts GET PUT
{accountID} POST
payments
DEL
{paymentID}
GET
GET GET
transactions GET PUT
{transactionID} POST
fxorders
GET PUT
users
DEL
{fxorderID}
GET
POST
GET
{userID} GET
json openapi
GET
yaml
41
GET
info GET
role GET
permissions POST
user
signin POST
signup POST
check GET
single-signon GET
info
{projectId} PUT DEL
project
members
POST
GET
DEL
group
PUT POST
PUT DEL POST GET
mind
info POST
open-edit POST
cancel-edit GET GET
restore
history GET
umlToPng
{uml}
common umlToSvg
{uml}
file
upload
GET
POST
POST
share
42
GET
spec
GET
implemented GET GET
GET
all
api
info
version
GET
build GET
uptime GET
process
GET
memory GET
os env
GET
cloud GET
runtime GET
dynamic packages
GET
static GET
connections GET
control
POST
GET
lifecycle
GET
state
log GET
activity GET
live status GET
ready
health
POST
GET GET
tests
state GET
external services
GET
internal
dependencies
GET
resources
GET
tail GET
last logs
{key}
GET
file PUT
config
GET
GET
GET
GET GET
sources
config
data
{key}
GET
GET GET
versions
data
{id} GET
version GET
secrets GET
metrics PUT GET GET
debug
trace
tasks
GET
in api
request GET
out resource
GET
{name}
calls
GET
events
43
GET
user
POST
emails GET
followers GET PUT
following
{userName} GET
issues POST
GET
keys orgs
repos
{id} GET
POST
GET PUT
watched
{userName} {repoName} GET
{user} GET
users
{userName}
keys GET
orgs
events
GET
{org} GET
public GET
followers GET
following POST
gists orgs
GET
GET GET
received_events repos
public GET
GET
watched
44
POST
register POST
login DEL
logout POST
refresh PUT DEL GET PUT
updatepassword
{userId} users
PUT
updateemail GET
participations GET
subscriptions PUT
subscribe
{boardId}
unsubscribe
{boardId}
PUT
POST
PUT
api boards
{boardId}
DEL GET
GET
polls
{postId} GET
all posts
{boardId} PUT DEL
{postId}
surveys
GET
GET
{postId}
DEL PUT
*
GET POST
45
GET
authorize
{provider}
callback
{provider}
GET
GET
GET
GET DEL POST PUT
DEL
conf
{project}
{file}
POST
GET
connectors GET
GET
GET DEL POST
POST
datasets
{dataset}
{action}
PUT
POST
{doc_type} groups
{id}
{action}
GET
GET
jobs GET
login
POST
POST
logout GET
GET
GET
POST
recipes
{recipe}
{action}
PUT
GET
roles GET POST
GET
upload
users
{file}
DEL
GET
46
POST POST
login authentication
{key}
POST POST
logout
{key}
POST POST
best-fit
{amount}
DEL GET
GET GET
feature-datas
batch
{featureKey}
DEL GET
DEL
{featureKey} POST
{sampleKey}
GET
DEL PUT GET GET
features
batch POST
DEL
{key}
PUT GET
GET
health DEL PUT
PATCH POST
check GET GET
samples
batch DEL PUT
DEL
PATCH POST
PUT
GET
PATCH
{key}
{value}
POST
GET
POST
GET
users
DEL
{key}
PUT GET
47
POST
register POST
confirm
{token} POST
login auth
POST
refresh GET
infos DEL
delete GET POST
{username} DEL GET
mypc
GET POST
DEL
mp
{pcid}
{mpid}
GET
GET
addressbook GET
item POST
DEL GET POST
squad
{squadid}
invite
{targetid}
kick
{targetid}
POST
POST
accept POST
decline POST
leave GET
{pcid} pc name
GET
{name} GET
meta
item
{itemtype}
48
GET
msisdn GET
nin lookup
GET
profileid GET
msisdn accounts
customers
GET
nin GET
received latest accounts
GET
paid
receiving
GET
balance GET
PATCH
merchants
DEL POST GET
POST
signup
{orgno}
GET
PATCH
DEL
kyc
POST
GET
GET
saleunits
PATCH
DEL POST GET
qr
{msn}
GET
GET GET
transactions
{transactionId} GET
overview GET
DEL
GET
POST
orderids
{orderId}
GET
receipt
GET
GET
products
active PATCH
DEL
{productId}
POST
GET
GET GET
data
saleunits
{msn}
revenue
{start}
GET
{stop} GET
users
{merchantSerialNumber}
payments
unsuccessful
eligibility
account
GET
{msisdn}
POST
accesstoken GET
api
whoami errors
GET
users tests
POST
POST POST
cards
{cardnumber}
data
GET
jtta customers GET
paying-in-vipps
invoices
GET
overview
settlements
merchants
{orgno}
{year}
{month}
saleunits
POST
consents
GET
GET
health
49
POST
GET
DEL PUT GET GET
apis
url
{apiID} POST
admin POST
signup auth POST
signup-fields POST
login POST
DEL
GET
PUT
developers
POST
{devID}
GET
GET
DEL PUT GET
keys
POST
renew
{keyID}
GET
GET POST
key-requests POST
{keyRequestID}
{status} DEL
GET
PUT
orgs
{orgID}
GET
POST
change-org POST
{newOrgID} DEL
GET
PUT
policies
POST
{policyID}
GET
GET POST
cname
portal-configuration
POST
profile
GET
POST
request-key
{planID} GET
portal
request-key-fields GET
plans GET
stats
POST
{type}
{planID}
DEL
GET
PUT
plans
{planID}
GET
GET
active-plans POST
DEL
GET
PUT
users
{userID}
GET
GET
check-auth GET
rbac GET
stats
{type} GET
ping POST
auth GET
apis system GET
policies POST
send-email POST
stats
50
POST
poll POST
auth
start GET
validate POST
PUT
episodes scrobble
{episode_id}
POST
GET
shows
{show_id} PUT
GET
GET
networks
{network_id}
DEL
GET
episodes PUT
GET
GET
people
{person_id}
DEL
follows PUT
GET
GET
shows user
{show_id}
DEL PUT
GET
GET
webchannels POST
tags
GET
{webchannel_id} PATCH
DEL
{tag_id}
DEL
GET
PUT
shows
{show_id}
DEL
PUT
GET
GET
episodes votes
{episode_id}
DEL
GET
shows
51
POST
sign_in DEL
sign_out PUT
password
POST
GET
unclock
POST
users
GET
confirmation
POST
PUT GET GET
validate
{id}
POST
payments DEL
payments GET
{user_id}
POST
apps
{id} DEL
products apps
{id}
GET
categories GET
categories
{id} GET
platforms products
GET
{product_id}
platforms DEL
{id}
GET
POST
feedbacks GET GET
apps admin
{id} GET
categories
52
POST
DEL
GET
PUT
admin_groups
{id}
GET
GET
admin_permissions POST
DEL
GET
PUT
admins
{id}
GET
GET
analytics POST
drilldown DEL
GET
PUT
api_scopes
POST
{id}
GET
DEL
GET
PUT
apis api-umbrella
{id}
v1
GET
GET
pending_changes config POST
POST
publish
contact GET
user_roles POST
PUT
users
POST
DEL
GET
{id}
GET
DEL
GET
PUT
website_backends
{id}
GET
53
POST
config
GET
POST
admin
POST
GET
GET
listeners
POST
{name} GET
clusters api
v1
DEL GET
DEL GET
POST
endpoints
{name}
GET
DEL
endpoints
{name}
GET DEL POST
rulelists POST
{name} GET
rules POST
GET
GET
GET
DEL
{name}
GET
sessions
{position}
DEL
{name}
routes
rules
GET
DEL
{name}
GET
54
POST
GET
DEL GET GET
apps
drush-aliases
{id}
GET GET
backups
{id}
GET GET
domains
{id}
GET GET
git-repo POST
{id} GET POST
upgrade
instances
DEL GET POST
deploy
{id}
POST
deploy-codebase POST
upgrade GET GET
orgs
{id}
GET GET
servers
{id}
GET POST
stacks
update GET POST
update
{id} GET GET
tasks user
{id} GET
55
POST
auth POST
login GET
users
POST
{id}
PATCH
GET
saleschannels
POST
GET
GET
{id}
PATCH
DEL
GET
GET
products
POST
{id}
PATCH
DEL
GET
GET
orders
POST
{id}
GET
DEL GET
PATCH
PATCH
PATCH
DEL
catalogs POST
items
{id}
{itemId}
DEL
GET
GET
pricelists
POST
{id}
PATCH
DEL
GET
GET
items
{id}
PATCH
GET
appdata POST
{salesChannelId} DEL
GET
PATCH
taxrate
{zipcode}
GET
56
GET
search POST HEAD
GET
GET PUT
projects
publicity
{project_id}
POST
logs POST
filter DEL
GET
PUT
members
{user_id}
GET
GET
statistics POST
GET
DEL PUT PUT
users
password
{user_id}
PUT
sysadmin DEL GET GET
tags
repositories
GET
manifests GET
top GET
logs GET
DEL GET
jobs
replication
log
{id} POST
policies POST
replication
GET
GET POST
targets
ping DEL GET PUT GET
{id}
policies
57
POST
search
GET
GET
autocomplete GET
scroll GET
datasetsatom {lang}
feeds
GET
datasetsrss GET GET
sitemap
{id} DEL
POST
PATCH
datasets
{id}
PUT GET
PUT
bulk
datasets
POST
DEL POST
catalogues
PATCH
{id}
PUT GET
DEL POST
dataservices
PATCH
{id}
PUT GET
GET
gazetteer
autocomplete GET
package_search ckan
GET
package_show
58
PUT GET
POST
GET
account
amount
self PUT
password POST
avatar GET
{uid} DEL
session
POST
POST
system
image
GET GET
assignment
{pages} GET GET
questionnaire
{pages}
GET GET
qa
{pages} GET
self
{type}
DEL POST
{aid}
GET
questionnaire answer
GET
{aid}
DEL POST GET
qa
DEL
{aid}
{qaid}
PUT
DEL POST
self
coin
GET
POST
{uid} GET
flow
59
POST
batchnodes POST
checks
GET
POST
clusters
GET
POST
deploys deploy
GET
wizard
GET
kubeconfigs GET
logs
{id} POST
networks
POST
GET
PUT
GET
GET
nodes api
v1
{ip}
DEL
GET
progresses
DEL
POST
clusters helm
{cluster} namespaces
GET
PUT GET DEL GET
{namespace}
releases
{name}
export
POST
PUT
render
rollback POST
ssh
tests POST
ssh_certificates
GET
60
GET GET
accounts
videos
{name}
GET
video-channels GET
config GET
feeds
videos{format} GET
jobs DEL
following
{host}
server
GET
followers GET
PUT
POST
GET
users
{id}
DEL
PUT GET GET
me
video-quota-used GET
videos
{videoId}
rating POST
avatar
pick
POST
register GET GET
videos
categories GET
licences GET
languages GET
privacies DEL GET PUT GET
description
{id}
POST
views POST
abuse DEL
blacklist
POST
POST
GET GET
comment-threads
{threadId} DEL
comments
{commentId}
POST
PUT
rate POST
upload GET
abuse GET
blacklist POST
GET
DEL PUT GET GET
video-channels
{id}
videos
GET
search
videos
61
GET
search POST HEAD
GET
DEL GET PUT
projects
publicity
{project_id}
POST
logs POST
filter DEL
GET
PUT
members
{user_id}
GET
GET
statistics POST
GET
DEL PUT PUT
users
password
{user_id}
PUT
sysadmin DEL GET GET
tags
repositories
GET
manifests GET
top GET
logs GET
DEL GET
jobs
replication
log
{id} POST
policies POST
replication
GET
GET POST
targets
ping DEL GET PUT GET
{id}
policies
62
DEL
auth
POST
POST
GET
DEL PUT GET
GET
user
POST
GET
version
{item-id}
{version-number}
DEL
GET
PUT
role
POST
{item-id}
DEL
GET
PUT
server
POST
GET
{item-id}
GET
DEL
GET
PUT
cluster
POST
{item-id}
GET
DEL
GET
PUT
playbook_configuration
POST
{item-id}
GET
GET
DEL GET GET
execution
{item-id}
steps
GET
permissions GET
playbook
63
GET
usuarios
listar POST
login GET
logout GET
funil clientes
GET
tarefas GET
vendas
filas GET
reservas GET
GET
noticias
categorias
GET POST
has
products
GET
reserve
DEL PUT GET GET
availability
{id}
PUT
status GET
test
{id} POST
step1 available
POST
step2
{id}
step3
{id}
{id}
{item}
POST
DEL
download POST
GET
DEL
type
POST
{id}
PUT
DEL
GET
PUT
product
item
{id}
GET
GET
items POST
{id_item}
GET
filters
DEL
availability
{id}
PUT
GET
units
POST
GET GET
reserves
{id} GET
search GET
situations grupos
GET
listar GET
alto GET
medio grupo GET
baixo GET
usuarios me
inativos
GET
GET
history
64
POST
DEL
vouchers
{code}
65
GET
apidocs meta
GET
apis GET
internal
apis
66
GET
data GET
api
v1
uploads metadata POST
notify
67
POST
PATCH
GET
DEL
tasks
{id}
GET
POST
{id}:complete
68
GET DEL
event-source-mappings 2014-11-13
{UUID}
PUT PUT
functions
{FunctionName}
configuration POST
invoke-async
69
GET
auth
loginData
meta
config
GET
GET GET
products
{productId}
quote
GET
wallet
balance POST
form POST
orders
sign PUT
cancel
70
GET
auth POST
login GET
logout POST
GET
DEL PUT GET POST
playlist POST
GET
user
{songId}
PUT GET GET
song POST
song
{id}
playlists
{id} GET
PUT
{id}
GET
71
DEL PATCH
{_id}
GET
transactions POST
add POST
login auth
GET
logout
72
GET PUT
POST
DEL
customers GET
{id}
GET
POST
GET
transactions
history GET
{id} POST
login auth
GET
logout
73
GET
ping POST
create DEL
users
POST
login
GET
PATCH
{userID} GET
authorize GET
clients oauth2 POST
client POST
token
74
POST
register user POST
logIn GET POST
Products
create DEL
deactivate products
{Id} PUT
{Id} GET POST
orders
create PATCH
{Id} PATCH
delete
{Id}
75
PUT
install
POST
POST
user
POST
createWithArray POST
createWithList GET
login GET
logout DEL PUT
{username}
GET
76
POST
login POST
signup PUT
POST
GET GET
user
{id}
filter
calories
DEL
{calorieId} PUT
POST
users
GET
DEL
{id}
GET
77
GET
sessions active POST
terminate GET
collections GET
invites GET
locations GET
masters PUT
user
POST
password
PATCH
GET
projects POST
register
GET
GET
tests GET
top
78
GET GET
content
unpublished GET
rest
ads GET
comments GET
node
id POST
push_notifications add_token user
POST
entity POST
comment GET
jwt
token
79
POST
login POST
reset-password POST
reset password
user
{code}
POST
update-password PATCH
DEL
{id}
PUT GET
POST
users
GET
80
DEL POST
session
GET
GET
DEL PUT GET
GET
DEL PUT POST GET GET
client
api
views
{clientId}
{viewsId}
{view}
{breakpoint}
{spec}
DEL
GET
PUT
user
{userId}
GET
GET
permission POST
upload GET
{image} download
GET
nested
file GET
filedownload
{file} GET
generic download
{ext}
GET
bookings GET
booking GET
rental GET
brands
{brandId}
models
classes
{productGroup}
GET
GET
elements POST
code DEL
customer
session
shop
shoes
POST
GET
81
POST POST
execute
notrace POST POST
notrace
batch
GET
list
ApiExecution decisions
GET GET
api
{decisionServiceId}
GET
GET
ref
Settings
{version}
{reference}
executions
GET
key
{executionkey}
82
GET
member_app_info GET
auth
parse_token GET
token
v0
POST
login members POST
register POST
add_friend POST
create_group GET
find_group_members contacts POST
join_group GET
load_friend
v1
GET
find members
GET load_group
GET
logout
83
POST
register POST
addMedicalQuestionnaire PUT
setAsQuarantined PUT
setAsInfected api
users PUT
setAsNotInfected POST
addLocation POST
getIntersections PUT
setIntersectionConfirmation
84
GET
chunkget GET
applist GET
appstats apprun
GET
PUT
chunkcreate PUT
chunkdump GET
chunklist PUT
chunkput PUT
chunkremove GET
loginfo GET
lookuptree GET
metadata GET
monitoring GET
nameget GET
namelist namereg
PUT
GET
nodeinfo GET
nodelist GET
statsprint GET
barrierstatus PUT
barrieralloc PUT
barriersignon PUT
barrierfree PUT
barriersize PUT
loggerlevel PUT
nodeshutdown GET
compgrpls GET
compgrpstatus
85
GET
authtest GET
channelshistory GET
channelsinfo GET
channelsinvite GET
channelsjoin GET
channelsleave GET
channelslist GET
channelsmark GET
channelssetPurpose GET
channelssetTopic GET
chatdelete GET
chatpostMessage GET
chatupdate GET
emojilist GET
filesinfo GET
fileslist GET
filesupload GET
groupshistory GET
groupslist GET
groupsmark GET
groupssetPurpose GET
groupssetTopic GET
imhistory GET
imlist GET
immark GET
searchall GET
searchfiles GET
searchmessages GET
starslist GET
userslist
86
GET
search GET
expand GET
info GET
v3
link
lookup GET
GET
link_edit
shorten GET
link_lookup user GET
link_save GET
save_custom_domain_keyword
87
DEL PUT
users
POST
GET
DEL PUT
orders
POST
GET
DEL PUT
products
POST
GET
DEL PUT
orderproducts
POST
GET
88
POST
delete POST
get detail POST
getone POST
set POST
add like v1
remove
video
POST
POST
get list POST
getone POST
get promote POST
set
89
POST
#CreateHapg POST
#CreateHsm POST
#CreateLunaClient POST
#DeleteHapg POST
#DeleteHsm POST
#DeleteLunaClient POST
#DescribeHapg POST
#DescribeHsm POST
#DescribeLunaClient POST
#GetConfig POST
#ListAvailableZones POST
#ListHapgs POST
#ListHsms POST
#ListLunaClients POST
#ListTagsForResource POST
#ModifyHapg POST
#ModifyHsm POST
#ModifyLunaClient POST
#RemoveTagsFromResource
90
POST
:userId PUT
shareNote DEL
deleteNote PUT
favourite PUT
addNoteToGroup GET
:noteId GET
searchNotesByTitle PUT
updateNotes
91
POST
#BatchPutAttributes POST
#CreateDomain POST
#DeleteAttributes POST
#DeleteDomain POST
#DomainMetadata POST
#GetAttributes POST
#ListDomains POST
#PutAttributes POST
#Select
92
POST
ExecuteSql
93
Acknowledgements The idea of decorating a tree with bulbs is a very old one. It must have been the very special atmosphere of the Vienna Software Seminar which inspired me to try to use it to draw the structure of APIs. I would like to thank the VSS participants for their valuable feedback and encouragement on my API sketches. This book would have not been possible without the efforts of Souhaila Serbout extracting recurring API fragments, Fabio Di Lauro crawling the history of API specification models, and Gustavo Graziani visualizing API landscapes as 3D forests. I am also grateful to the authors of the awesome LaTeX forest package and to many anonymous designers who have published their API descriptions on the Web.
Cesare Pautasso Lugano, Switzerland
94
References Olaf Zimmermann, Mirko Stocker, Daniel Lübke, Uwe Zdun, Cesare Pautasso Microservice API Patterns.
Cesare Pautasso, Software Architecture: visual lecture notes, LeanPub, 2020.
95