Está en la página 1de 5

Tarea 1.

Mencione cuáles son los recursos del API (tome solo los más
relevantes).
Esquema: https, http, ftp
Autoridad: @ + hostname-ip:port
Ruta: /clientes/listas
Query: clave=valor indica con el carácter? Ejemplo:?sort=true
Fragmento: se indica mediante el carácter # -> #

Representación es el json del recurso.


Operación: GET, POST, PUT, DELET
Linea de estado :
Código de estado: 100,200, 300,400,500

Spotify Slack Trello


Albums Calls Actions
Artists User Members
Shows Admin Organization
s
Episodes Chat Comments

Tracks Conversations Cards


Search Dialog Boards
Users Files Checklists
Playlist Reactions Emoji
Genres Views Enterprises
Player Workflows Labels
Markets channels Lists
Tarea 2. Tome dos recursos de cada API e identifique qué operaciones se
pueden realizar sobre esos recursos.

API RECURSO OPERACIONES

Spotify Albums Consultar, Actualizar,


Eliminar
Spotify Artists Consultar
Trello Cards Consultar, Crear, Actualizar,
Eliminar
Trello Lists Consultar, Crear, Actualizar
Slack Bookmarks Consultar, Crear, Actualizar,
Eliminar
Slack chat Consultar, Crear, Actualizar,
Eliminar

Tarea 3. Para cada operación del recurso identifique el verbo HTTP empleado y
el código de estado retornado por la operación

API RECURSO Verbo Códigos


Spotify Albums GET,PUT, DELETE 200,401,403,429
Spotify Artists GET 200,401,403,429
Trello Cards GET, PUT, DELETE, POST 200
Trello Lists GET, PUT, POST 200
Slack Bookmarks POST, PUT, GET, DELETE 200, 300,400,500
Slack chat DELETE, GET, POST, PUT 200, 300,400,500

Tarea 4. En los dos recursos identificados indique cómo es su representación.


API RECURSO Representación
Spotify Albums {"album_type":"compilation","total_tracks":9,"available_markets":["C
A","BR","IT"],"external_urls":{"spotify":"string"},"href":"string","id":"2
up3OPMp9Tb4dAKM2erWXQ","images":[{"url":"https://i.scdn.co/ima
ge/ab67616d00001e02ff9ca10b55ce82ae553c8228\n","height":300,"
width":300}],"name":"string","release_date":"1981-
12","release_date_precision":"year","restrictions":{"reason":"market"
},"type":"album","uri":"spotify:album:2up3OPMp9Tb4dAKM2erWXQ",
"artists":[{"external_urls":{"spotify":"string"},"followers":{"href":"strin
g","total":0},"genres":["Prog
rock","Grunge"],"href":"string","id":"string","images":[{"url":"https://i.
scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n","h
eight":300,"width":300}],"name":"string","popularity":0,"type":"artist"
,"uri":"string"}],"tracks":{"href":"https://api.spotify.com/v1/me/shows
?offset=0&limit=20\n","items":[{}],"limit":20,"next":"https://api.spotif
y.com/v1/me/shows?offset=1&limit=1","offset":0,"previous":"https://
api.spotify.com/v1/me/shows?offset=1&limit=1","total":4}}
Spotify Artists {"external_urls":{"spotify":"string"},"followers":{"href":"string","total":
0},"genres":["Prog
rock","Grunge"],"href":"string","id":"string","images":[{"url":"https://i.
scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n","h
eight":300,"width":300}],"name":"string","popularity":0,"type":"artist"
,"uri":"string"}
Trello Cards {"id":"5abbe4b7ddc1b351ef961414","address":"<string>","badges":{"
attachmentsByType":{"trello":{"board":2154,"card":2154}},"location":t
rue,"votes":2154,"viewingMemberVoted":false,"subscribed":false,"fog
bugz":"<string>","checkItems":0,"checkItemsChecked":0,"comments":
0,"attachments":0,"description":true,"due":"<string>","start":"<string
>","dueComplete":true},"checkItemStates":["<string>"],"closed":true,"
coordinates":"<string>","creationMethod":"<string>","dateLastActivity
":"2019-09-16T16:19:17.156Z","desc":" Hey there,\n\nTrello's
Platform team uses this board to keep developers up-to-
date.","descData":{"emoji":{}},"due":"<string>","dueReminder":"<strin
g>","email":"bentleycook+2kea95u7kchsvqnxkwe+2q0byi6qv4pt9uc7q
5m+25qyyohtzg@boards.trello.com","idBoard":"5abbe4b7ddc1b351ef
961414","idChecklists":[{"id":"5abbe4b7ddc1b351ef961414"}],"idLabe
ls":[{"id":"5abbe4b7ddc1b351ef961414","idBoard":"5abbe4b7ddc1b3
51ef961414","name":"Overdue","color":"yellow"}],"idList":"5abbe4b7
ddc1b351ef961414","idMembers":["5abbe4b7ddc1b351ef961414"],"i
dMembersVoted":["5abbe4b7ddc1b351ef961414"],"idShort":2154,"la
bels":["5abbe4b7ddc1b351ef961414"],"limits":{"attachments":{"perB
oard":{"status":"ok","disableAt":36000,"warnAt":32400}}},"locationNa
me":"<string>","manualCoverAttachment":false,"name":" What?
Why?
How?","pos":65535,"shortLink":"H0TZyzbK","shortUrl":"https://trello.
com/c/H0TZyzbK","subscribed":false,"url":"https://trello.com/c/H0TZy
zbK/4-%F0%9F%91%8B-what-why-
how","cover":{"color":"yellow","idUploadedBackground":true,"size":"
normal","brightness":"light","isTemplate":false}}
Trello Lists {"id":"5abbe4b7ddc1b351ef961414","name":"Things to buy
today","closed":true,"pos":2154,"softLimit":"<string>","idBoard":"<stri
ng>","subscribed":true,"limits":{"attachments":{"perBoard":{"status":"
ok","disableAt":36000,"warnAt":32400}}}}
Slack Bookmark {"id":"Bk033XFJ9BTJ","channel_id":"C1RQ000","title":"bookmark-
s 1","link":"https://google.com","emoji":":clap:","icon_url":"https://ww
w.google.com/favicon.ico","type":"link","entity_id":null,"date_created
":1644956055,"date_updated":0,"rank":"g","last_updated_by_user_id
":"U0334B6G6G5","last_updated_by_team_id":"T018DF03GHY","shor
tcut_id":null,"app_id":null}
Slack chat {"ok":true,"channel":"C024BE91L","ts":"1401383885.000061","text":"
Updated text you carefully authored","message":{"text":"Updated text
you carefully authored","user":"U34567890"}}

Tarea 5. Considera usted que la identificación de los recursos es clara y


consistente. Justifique su respuesta.

Los verbos usados en la operaciones son adecuados ya que indican claramente el objetivo de cada
una de las operaciones basándose en el modelo de arquitectura REST.

Tarea 7. Considera usted que el código de estado retornado en las operaciones


sobre los recursos es el adecuado. Justifique su respuesta.

Los códigos de slack, Spotify son bastante adecuados tienen diversidad de


códigos de respuesta para cada uno de los escenarios que pueden ocurrir en las
operaciones. Por otro lado la documentación de Trello dice que en todas las
operaciones retorna 200 lo cual puede evidenciar una falencia en la api ya que
no cuenta con mas códigos de respuesta que contemplen todos los escenarios.
Lo anterior puede deberse a dos factores: primero a que no esta documentada
de manera adecuada la api o que el api no contempla escenarios diferentes al
200 ok.
Tarea 8. Considera usted que la representación de los recursos es la adecuada.
Justifique su respuesta.

La representación es adecuada, representa de manera clara y consistente los


atributos de cada recurso y usan Json como base para entregar las respuesta.
Tarea 9. Identifique dos operaciones en las cuales estén relacionados dos
recursos.

API Recurso
Spotify Me/followings Interviene el usuario
autenticado y los
artistas a los cales
sigue.
Spotify Me/playlists/{playlist_id}/followers Intervienen las listas
de reproducción y
los seguidores de las
mismas

Tarea 10. Mencione cómo se identifican los recursos en esas operaciones sobre
recursos relacionados.

En ambos casos se relaciona una url al recurso secundario usando href:


{"playlist":{"followers":{"href":"string","items":[{}],"limit":0,"next":"string","curs
ors":{"after":"string"},"total":0}}}

También podría gustarte