Users and Contacts¶
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.
Index User¶
Returns some basic profile information, like the name, bio, and groups you share with another user.
Important
This request is relative to https://v2.groupme.com/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
Parameters
-
include_shared_groups
boolean - if
false
, theshared_groups
property contained in the response will benull
.
Index Blocks¶
A list of contacts you have blocked. These people cannot DM you or add you to groups.
HTTP Request | |
---|---|
Parameters
-
user (required)
string - Your user ID
HTTP Response | |
---|---|
Block Between?¶
Asks if a block exists between you and another user id
HTTP Request | |
---|---|
Parameters
-
user (required)
string - Your user ID
-
otherUser (required)
string - The other user's ID
Block¶
Creates a block between you and the contact
HTTP Request | |
---|---|
Parameters
-
user (required)
string - your user id.
-
otherUser (required)
string — user id of person you want to block.
HTTP Response | |
---|---|
Unblock¶
Removes block between you and other user
HTTP Request | |
---|---|
Parameters
-
user (required)
string - your user id.
-
otherUser (required)
string — user id of person you want to block.
HTTP Response | |
---|---|
Unblock (Alternative method)¶
Removes block between you and other user
HTTP Request | |
---|---|
Parameters
-
user (required)
string - your user id.
-
otherUser (required)
string — user id of person you want to block.
HTTP Response | |
---|---|
Index Relationships¶
This endpoint lists all the users in your GroupMe contact book. However, the server—not the client—decides how many results to return in each response. To retrieve the full list of contacts, you’ll need to make repeated requests using the since parameter.
Each response is ordered by creation time. To get the next page of results:
-
Take the created_at_iso8601 timestamp from the last contact in the response.
-
Use that timestamp as the
since
parameter in your next request.
Repeat this process until the response contains an empty list, which means you've reached the end of the contact list.
Important
This request is relative to https://api.groupme.com/v4/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
Parameters
-
include_blocked
boolean - if
false
, users that returnblocked: true
will be omitted from the response. -
since
string - an ISO 8601 timestamp, marking the last contact you've received
Add Relationship¶
Add a contact given a user ID and their share token. This can be grabbed from the user's share URL, i.e.: https://groupme.com/contact/:user_id/:share_token
Important
This request is relative to https://api.groupme.com/v4/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
Parameters
-
user_id
string - the user's ID
-
token
string - the share token of the user you're adding as a contact. This is extracted from that user's share URL.
Import Relationship From Contact¶
Imports a list of phone contacts into the user's GroupMe relationships. Returns a batch ID, so that you can fetch the results of the import as they could take some time to process.
Breaking Change: Device Verification
This endpoint now requires platform-level device verification (e.g., Apple App Attest or Google Play Integrity). Requests must include valid attestation headers (X-verify-token
), or they will be rejected.
This change was introduced by GroupMe to mitigate automated abuse. Unfortunately, it also blocks all third-party clients, including many valuable community projects. As such, this endpoint is no longer accessible to third-party applications and is retained here for historical reference only.
HTTP Request | |
---|---|
Parameters
-
name
string - the contact’s display name (e.g., from your address book).
-
guid
string - a client-generated unique identifier for this contact (UUID format recommended). Used to track contacts across requests and responses.
-
phone_number
string - the contact's phone number. No dashes, spaces, or parens. Must include the country code.
Fetch Relationship Import Results¶
Retrieves an array of results from a previously submitted relationship import. Each result includes a matched GroupMe user, mapped back to the original contact via the guid.
Important
This request is relative to https://api.groupme.com/v4/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
Parameters
-
batch_id
string - The batch ID received from the
/relationships/import_contacts
endpoint.
Delete Relationship¶
Delete a relationship from your contact book
Important
This request is relative to https://api.groupme.com/v4/
, not https://api.groupme.com/v3/
.
HTTP Request | |
---|---|
HTTP Response | |
---|---|