Login

  1. Authenticate User

    POST http://asshwebservices.us-east-2.elasticbeanstalk.com/api/Login/{username}/{type}/
    Header username , password

    RESPONSE
    • User authenticated - Response parameters: UserId, FullName, Email, Webrole & Token(Token is valid for 12 hrs)
    • INVALID_OPERATION_WITH_EXPIRED_PASSWORD - Temporary Password is valid
    • INVALID_LOGIN - Invalid username and/or password
    • INVALID_TYPE_VALUE - valid type; ios/android
    • EXPIRED_TEMP_PASSORD - Temporary Password is expired
    • Password_Lockout - if >10 login attempts
    • Error exception, "We encountered an error, please contact ASSH at info@assh.org"
  2. Request Password Reset

    POST http://asshwebservices.us-east-2.elasticbeanstalk.com/api/PasswordReset/{username}/


    RESPONSE
    • Email exist in Salesforce User's account - send temporary password to the email addres provided and api return parameter{string} “Sent temporary password to + {email}” message
    • Email does not exist found - return parameter{string} “No record found with this email address.” message
    • Error exception, "We encountered an error, please contact ASSH at info@assh.org"
  3. SetPassword

    POST http://asshwebservices.us-east-2.elasticbeanstalk.comapi/SetPassword/
    Header tempPassword [encrypted] , newPassword [encrypted]

    RESPONSE
    • If TemporaryPassword and NewPassword are valid (>8 char long and alphanumeric), it will return “Success” message
    • If TemporaryPassword is valid and NewPassword is not valid (<8 char long and not alphanumeric), it will return “Password must be at least 8 characters long and have a mix of letters and numbers.” message
    • If TemporaryPassword is not valid and expired, it will return “Invalid/expired Temporary Password” message
    • Error exception, "We encountered an error, please contact ASSH at info@assh.org"
  4. Logout

    POST http://asshwebservices.us-east-2.elasticbeanstalk.com/api/Logout/
    Header token , type [ios/android]

Hand-e Collections

  1. Get Video Collections


    Header Authorization : [Access Token]
    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Collections
  2. Get Video Collection


    Header Authorization : [Access Token]
    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Collection

    Request Parameters:
    • Id= [Collection Id]
    • UserId

Hand-e Topics

  1. Get Video Topics


    Header Authorization : [Access Token]
    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Topics
  2. Get Video Topic


    Header Authorization : [Access Token]
    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Topic

    Request Parameters:
    • Id= [Topic Id]
    • UserId

Hand-e Authors

  1. Get Video Authors

    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Authors
    Header Authorization : [Access Token]

    Request Parameters:
    • lastname= [default value='a']
  2. Get Video Author

    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Author
    Header Authorization : [Access Token]

    Request Parameters:
    • Id= [AuthorId]
    • UserId

Hand-e Video Comment

  1. Get Video Comments

    GET https://assh.force.com/communityhub/services/apexrest/api/Video/Comments
    Header Authorization : [Access Token]

    Request Parameters:
    • Id= [videoId]
    • Limit = [default 1]
    • Offset = [default 1]
  2. Add Video Comment

    POST https://assh.force.com/communityhub/services/apexrest/api/Video/Comments
    Header Authorization : [Access Token]

    Request Body: [Object]:

Hand-e Video Details

  1. Get All Videos Filter by Collection/Topic/Author

    GET https://assh.force.com/communityhub/services/apexrest/api/Videos?Id=CollectionId&SortBy=Popularity
    Header Authorization : [Access Token]

    Request Parameters:
    • Id= [ CollectionId/TopicId/AuthorId]
    • UserId
    • ContentType = [collection/topic/author]
    • pageLimit = [default 10]
    • offset = [default 1 ]
    • SortBy = Popularity,PubDate,Views [default value='PubDate']
  2. Get Video Details and Related Videos

    GET https://assh.force.com/communityhub/services/apexrest/api/Video?Id=[VideoId]&UserId=[uId]
    Header Authorization : [Access Token]

    Request Parameters:
    • Id= [VideoId]
    • UserId
  3. Get Video Url and download Link

    GET http://asshwebservices.us-east-2.elasticbeanstalk.com/api/Video/[VimeoId]
    Response:
    • Files [quality, type, width, height, link, size]
    • Downloads [quality, type, width, height, expires, link, size]

UserSaves

POST https://assh.force.com/communityhub/services/apexrest/api/Video/MyHande?UserId[UserId]
Header Authorization : [Access Token]
  1. Like

    Request Body [Object]:
    • Id
    • UserId
    • ContentType= [Video/Author/Topic/Collection]
    • SaveType = [like]
    • Value = [Like/Dislike/Neutral]
  2. Favorite/Viewed

    Request Body [Object]:
    • Id
    • UserId
    • ContentType= [Video/Author/Topic/Collection]
    • SaveType = [favorite/viewed]
    • Value = [boolean]
  3. Play Progress

    Request Body [Object]:
    • Id
    • UserId
    • ContentType= [video]
    • SaveType = [playprogresss]
    • Value = [integer]
  4. Add Notes

    Request Body [Object]:
    • Id
    • UserId
    • Title=['Video Note|' + addNote.timestamp + '|' + addNote.timeSeconds]
    • Value = [plain text]
  5. Add Notes

    Request Body [Object]:
    • Id
    • UserId
    • SaveType = [addnote]
    • Title=['Video Note|' + addNote.timestamp + '|' + addNote.timeSeconds]
    • Value = [plain text]
  6. Delete Notes

    Request Body [Object]:
    • Id = [NoteId]
    • UserId
    • SaveType = [deletenote]

My Hand-e

POST https://assh.force.com/communityhub/services/apexrest/api/Video/MyHande
Header Authorization : [Access Token]
  1. Favorite Videos

    Request Parameters:
    • UserId
    • Name= [Favorite_Videos ]
    • pageLimit = [default 10]
    • offset = [default 1 ]
    • SortBy = date/name [default date ]
  2. Annotated Videos

    Request Parameters:
    • UserId
    • Name= [annotated_videos ]
    • pageLimit = [default 10]
    • offset = [default 1 ]
    • SortBy = date/name [default date ]
  3. Favorite Authors

    Request Parameters:
    • UserId
    • Name= [authors ]
    • SortBy = date/name [default date ]
  4. Favorite Topics

    Request Parameters:
    • UserId
    • Name= [topics ]
  5. Favorite Collections

    Request Parameters:
    • UserId
    • Name= [collections ]
    • SortBy = date/name [default date ]

Hand-e HomeScreen

POST https://assh.force.com/communityhub/services/apexrest/api/Video/HomeScreen?UserId[UserId]
Header Authorization : [Access Token]
  1. Request Parameters

    • UserId

Hand-e Residents Reading List

  1. POST https://assh.force.com/communityhub/services/apexrest/api/Residents/ReadingList
    Header Authorization : [Access Token]

Video Taxonomies

  1. GET https://assh.force.com/communityhub/services/apexrest/api/Video/Taxonomies
    Header Authorization : [Access Token]

Hand-e WebView Pages

  1. Sign Up

    https://www.assh.org/hande/s/create-new-account
  2. About

    https://www.assh.org/hande/s/about-app
  3. Terms of Use

    https://www.assh.org/hande/s/user-agreement-app
  4. Resident Reading List

    https://www.assh.org/hande/s/resident-reading-list-app