Objective:

Analyze and document the RESTful best practices implemented in each API, including their URL structure, resource naming conventions, HTTP methods usage, error handling, authentication mechanisms, and any other relevant aspects.

Twitter API:

The Twitter API can be used to programmatically retrieve and analyze Twitter data, as well as build for the conversation on Twitter. Here’s the V2 of Twitter API -

  1. Authentication flow: Auth 2.0 authentication system

    auth.png

  2. API endpoints:

    GitHub API:

    Create a new user account. The email address and username for the account must be unique.

    Base URL: https://api.github.com

    $ curl -I <https://api.github.com/users/octocat/orgs>
    
    > HTTP/2 200
    > Server: nginx
    > Date: Fri, 12 Oct 2012 23:33:14 GMT
    > Content-Type: application/json; charset=utf-8
    > ETag: "a00049ba79152d03380c34652f2cb612"
    > X-GitHub-Media-Type: github.v3
    > x-ratelimit-limit: 5000
    > x-ratelimit-remaining: 4987
    > x-ratelimit-reset: 1350085394
    > Content-Length: 5
    > Cache-Control: max-age=0, private, must-revalidate
    > X-Content-Type-Options: nosniff
    

    Endpoints available for GitHub Apps:

    **activity:**

    **actions:**

    **branches:**

    **commits:**

    dependency-graph

    emojis

    gitignore

    rate-limit

    search

    1. User management and authentication:


    Stripe API:

    The Stripe API is organized around REST. Stripe API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

    Base URL: https://api.stripe.com

    HTTP status code:

Error types:

Handling error:

API endpoints: