Skip to content

REST api design

bannaN edited this page Nov 28, 2014 · 9 revisions

Top level resources

  • /api/conferences - Fetches information about all conferences

  • /api/{name}/{subid}/ - Specific conference

    • /api/{name}/{subid}/news/

      • POST - Post a new news item
      • GET
    • /api/{name}/{subid}/users/

      • GET

    */api/{name}/{subid}/users/{id}

    • PUT - Attend the conference

    • DELETE - Delete the participation

    • /api/{name}/{subid}/talks/

      • POST - Suggest a talk for the conference
    • /api/{name}/{subid}/events/

      • POST - Add a event to the conference
      • GET - Gets the events of the conference
    • /api/{name}/{subid}/rooms/

    • /api/{name}/{subid}/rooms/{id}/schedule

      • GET - Get the schedule for the specific room
  • /api/news/

  • /api/news/{id}

  • /api/users/

  • /api/users/{id}

    • GET /api/users?login=sjn
  • /api/users/{id}/schedule

    • GET - Get the user specific schedule.
    • PUT - Update the users schedule. Must provide a talk_id
  • /api/talks/

  • /api/talks/{id}

    • PUT - Updates the talk
  • /api/talks/{id}/users

    • GET - Get all people attending the talk
  • /api/events

  • /api/events/{id}

Every plural resources returns: [ { href : "", label : "" } ]

Every request for specific resources returns a JSON object.

Questions: Did we come to a decision about versioning? Whats next?

Clone this wiki locally