Account Management¶
Unless otherwise stated, endpoints are relative to https://api.groupme.com/v3/ and must include the token of the user making the call - so, for example, if an endpoint is GET /groups
, the request you make should be using the URL https://api.groupme.com/v3/groups?token=aSDFghJkl
, where aSDFghJkl
is replaced with the user's token.
URLs which include a variable, such as GET /groups/:id
, have their variables marked with a colon. So a request to that endpoint would look like https://api.groupme.com/v3/groups/1234567?token=aSDFghJkl
, where 1234567
is replaced with the group's ID, and aSDFghJkl
is replaced with the user's token.
Finally, all responses are wrapped in a response envelope of the following form:
If the request succeeds, meta.errors
will be null, and if the request fails, response
will be null.
Note
Calls related to account security, such as managing your password or updating MFA settings are located in the Oauth / MFA Managment section.
About¶
Get details about the authenticated user
HTTP Request | |
---|---|
Update Details¶
Update attributes about your own account
HTTP Request | |
---|---|
Parameters
-
avatar_url
string — A valid image URL proccesed by GroupMe's image service
-
name
string — Name must be of the form FirstName LastName
-
email
string — Email address. Must be in name@domain.com form.
-
zip_code
string — Zip code.
HTTP Response | |
---|---|
Update Details (Alternative/Extended Method)¶
The GroupMe API technically allows for two different calls that update your profile details: the officially documented call to /users/update
above, and also a more useful (but also unofficially documented) call to https://v2.groupme.com/users/:your_user_id
. This second option is the one that all official clients currently use and seems to be the most current way clients update the newest addition to profiles, such as your profile gallery, theme song, bio, and intrest tags.
Note: all of the parameters in this request are optional, however I'm including them all here as an example for verbosity.
Important
This request is relative to https://v2.groupme.com/
, not https://api.groupme.com/v3/
.
-
name
string — Name must be of the form FirstName LastName, though a last name is not required
-
email
string — Email address. Must be in name@domain.com form.
-
avatar_url
string — A valid image URL processed by GroupMe's image service
-
bio
string — A description of the profile.
-
song_url
string — Spotify song share URL for your profile's "theme song".
-
photo_urls:
array — An array of image urls processed by GroupMe's image service to be displayed in your profile's image gallery. You must have at least 3 for the API to accept them.
-
intrests:
array — an array of intrest tag indexes (as integers), these tags are new and not well documented (but this will hopefully change soon!).
-
disable_favorite_notification:
boolean —
true
to disable reaction notifications,false
to enable them. -
group_notification_sound:
string — the name of the WAV file to play when you receive a group notification on the Mobile App. These file names are internal to the app, so the options are not well documented.
-
dm_notification sound
string — the name of the WAV file to play when you receive a DM notification on the Mobile App. These file names are internal to the app, so the options are not well documented. (However they appear to be the same options as the ones availibe for the
group_notification_sound
parameter).
Update Major Tags¶
This call is only allowed for accounts that are members of a school domain, which is not an easy proccess to automate and thus will not be fully documented. HOWEVER, once you are in a domain, you have a few additional calls availible for your account.
Parameters
-
codes
array — an array of Major indexes (as strings), these are numbers that represent the different options for Majors to choose from. The complete list of options alongside their indexes can be found at https://web.groupme.com/assets/majors/majors.en-US.json.
Set Graduation Year and Domain Visibility¶
This call is only allowed for accounts that are members of a school domain, which is not an easy proccess to automate and thus will not be fully documented. HOWEVER, once you are in a domain, you have a few additional calls availible for your account.
This call specifies your graduation year tag inside of your profile as well as what level of visibility you want your profile to be at within the campus domain.
HTTP Request | |
---|---|
Parameters
-
graduation_year
integer — The year you'd like the tag to read. This number can't be less than
1900
or greater thannow + 10 years
. It can also benull
if you do not wish for your graduation year to display on your profile. -
campus_profile_visibility
string — The level of visibility you want your profile to be at within your domain directory. Can be
hidden
(nobody at all),graduation_year
,major
, orvisible
(everyone in your domain).graduation_year
andmajor
are not permitted unless you have specified a year or at least one major.
HTTP Response | |
---|---|
Toggle Profile Sharing¶
Enables/disables your account's share_url
and share_qr_code_url
properties.
Turning this off and back on again generates a new URL every time and invalidates past ones that you may have shared.
Parameters
-
status
String - Can be set to
enable
ordisable
, enable generates a share URL for your profile, disable invalidates it.
HTTP Response | |
---|---|
Enable SMS mode¶
Enables SMS mode for N hours, where N is at most 48. After N hours have elapsed, user will receive push notfications.
Parameters * duration (required)
integer - the number of hours to be in SMS mode for. Max of 48. Alternatively can be set to `"always"` to never expire.
-
registration_id
string - The push notification ID/token that should be suppressed during SMS mode. If this is omitted, both SMS and push notifications will be delivered to the device.
HTTP Response | |
---|---|
Disable SMS mode¶
Disables SMS mode
HTTP Request | |
---|---|
HTTP Response | |
---|---|
Index pinned conversations¶
Lists out the IDs of messaging channels you've pinned to the top of your conversations list.
Interestingly, groups that you have left or have been deleted by their owners will still appear in this list. However, they will not show in the UI. The only way to remove an ID from this list is to unpin it manually.
Important
This request is relative to https://api.groupme.com/v4/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
HTTP Response | |
---|---|
Update pinned conversations¶
Alter the list of pinned conversations you've pinned
Important
This request is relative to https://api.groupme.com/v4/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
Parameters * pinned_conversation_ids (required)
list (strings) - the IDs of conversations you'd like to have pinned. If an ID is not present in this list but is currently pinned, it will be removed. You don't actually have to be in a group to pin it, but it will not display in your pins list unless you're a member.
HTTP Response | |
---|---|