Extend your community

Profile Create (Group Join)

POST /2/profile
  • json
  • xml
Host: api.meetup.com
  • basic
api version 2

This method allows an authenticated member to join a group by creating a profile

Request Parameters

This method requires an HTTP POST. All required parameters must be supplied. An intro and answers may be required based on the group the member is joining. To find out if a group requires an intro or answers to questions, query for the group through one of the Groups methods providing setting the fields parameter to join_info and inspecting the join_info in the results. Answers to the questions must be named using the convention answer_{question_id}.

answer_{qid}

Answers to questions from groups API join_info question fields

group_id

Id of group to join

group_urlname

Urlname of group to join

intro

Provides a Member an opportunity to tell the group about themselves

new_photo

file upload for a new member photo

photo_id

photo_id of the photo to use for this profile

site_name

Name of member's site. Max length is 32

site_url

Link to member's site. Max length is 80

Response

If successful, this method returns a 201 Created response with a Location header containing the Profile Get URI to access this profile.

400 Bad requests may be returned under certain conditions along with a response object containing information about the failure. The code property of this may be one of

  • bad_group: an invalid group was provided
  • bad_member: an invalid member was provided
  • invalid_photo: an invalid photo_id was provided
  • missing_photo: a photo was required to join but one could not be resolved
  • member_exists: this member has already joined the group
  • member_banned: this member has been banned from the group
  • unjoinable_group: this group is no longer joinable
  • pending_payment: this member is pending a payment for the group
  • member_email: Meetup is not able to successfully send email to this member
  • member_unapproved: a previous membership request was declined
  • member_removed: this member was previously removed from the group
  • join_closed: this group is not allowing new members
  • join_viaweb: this join is not supported in the API, try joining via the website
  • membership_pending: this membership awaiting organizer approval
  • missing_intro: the request required a valid intro
  • missing_answer: the request was missing an answer to a required question
  • invalid_answer: the request contained invalid question answer
  • invalid_url: the invalid site_url
  • invalid_site_name: the site name was too long
  • unknown_error: a generic error

The details property of this object will contain additional information. The content body of a successful request is the same of that returned by the Profile Get query method.

Examples

Join the open group foo-bar

curl -X POST 'https://api.meetup.com/2/profile'
   -F 'group_urlname=foo-bar'
   -F 'key=YOURKEY'

Join a group named foo-bar that requires answers to questions and an intro

# get the group's join info
curl 'https://api.meetup.com/2/groups/?key=YOURKEY&group_urlname=foo-bar&fields=join_info'

# answer in POST to /2/profile
curl -X POST 'https://api.meetup.com/2/profile'
   -F 'group_urlname=foo-bar'
   -F 'intro=well hello'
   -F 'answer_123=answering question 123'
   -F 'answer_456=answer question 456'
   -F 'key=YOURKEY'

Profile Edit

POST /2/profile/:gid/:mid
  • json
  • xml
Host: api.meetup.com
  • basic
api version 2

Update a member's group profile

Request Parameters

The gid and mid in this method's path are group and member IDs, both needed to uniquely identify the member profile to be edited. An authenticated user may update their own profile by substituting "self" for the mid. All POST parameters are optional unless required by the group. Only the organizer of the group may edit the member's title and role within the group. Those are the only things the organizer may edit. When requesting to set a role with add_role the member's previous role will be cleared. Members may edit all other fields of their own profiles with the exception of title, add_role, and remove_role. This method requires an HTTP POST.

add_role

Allows those with permission to assign one of the following roles: event_organizer, coorganizer, assistant_organizer

answer_{qid}

Answers to questions from groups API join_info question fields

intro

Provides a Member an opportunity to tell the group about themselves

new_photo

file upload for a new member photo

photo_id

photo_id of the photo to use for this profile. set to 0 to unset the current photo

remove_role

Allows those with permission to remove one of the following roles: event_organizer, coorganizer, assistant_organizer

site_name

Name of member's site. Max length is 32

site_url

Link to member's site. Max length is 80

title

An organizer-defined member title.

Response

If successful, this method responds with 200 OK. 401 Unauthorized is returned if the currently authenticated member can not edit the specified profile. The content body is the same as that returned by the Profile Get query method. 400 responses may also contain the error codes listed in the Profile Create method with the addition of invalid_role which is returned when the role adjustment was failed to be applied.

Profile Get

GET /2/profile/:gid/:mid
  • json
  • xml
Host: api.meetup.com
  • basic
api version 2

Retrieves a single group profile

Try it in the console

Request Parameters

Only authorization parameters are needed.

fields

Request that additional fields (separated by commas) be included in the output

Response

additional

Additional information supplied by the member

answers

Array of answers to group profile questions. Unanswered questions are returned without the answer field

answer

Text of the answer if answered

question

Text of the question

question_id

Unique ID of the question this answers

bio

Member's 'introduction' to the group

comment

What this member says about this group

created, updated

When this member profile was created and last updated, in milliseconds since the epoch.

group

The group this profile belongs to

created

Date and time that the group was founded, in milliseconds since the epoch

group_lat

Approximate group latitude

group_lon

Approximate group longitude

id

Group id

join_mode

"open", "approval", or "closed"

name

Group name

urlname

Group URL name

who

What the group calls its members

member_city

Optional fields parameter for the Member's city

member_country

Optional fields parameter for the Member's country code

member_id

The member's id

member_state

Optional fields parameter for the Member's state (when country is us)

membership_dues

Optional fields parameter for the last payment received for the Group's membership dues and optionally, the status of the member's dues for the current billing period if the group has set up recurring membership dues payments. This field is only visible only to the organizer of the group and to the member themselves. Members can not see other member's membership dues

cancelled

For groups with recurring billing periods, this Boolean field indicates that membership dues were cancelled

exempt

For groups with recurring billing periods, this Boolean field indicates that the member is exempt from payment.

paid_until

For groups with recurring billing periods, this returns the time in milliseconds since the epoch that the member's next payment is due

period_status

For groups with recurring billing periods, this returns one of the following values grace, paid, pending, unpaid

total_amount

Total amount paid

transaction_time

Time the transaction was made in milliseconds since the epoch

trial

If the group offers a trial membership, this indicates information for unpaid members.

days

The total number of trial days offered by the group

days_remaining

The number of days remaining in the member's trial period

expired

Boolean indicator of whether or not the unpaid subscription has expired or not

name

The member's name

other_services

Third-party services associated with the member account

[service-name]

This element is flickr, tumblr, twitter, or linkedin

identifier

identifier for the service, a username or URL

photo

The member's photo if available

highres_link

URL for the photo at its maximum size

photo_id

Photo ID

photo_link

URL for a standard size of the photo

thumb_link

URL for a thumbnail of the photo

photo_url

Link to the group profile photo of the member

profile_url

Link to the member's group profile page

role

If applicable, the member's role in the group (Organizer, Assistant Organizer, Co-organizer, or Event Organizer)

site_url, site_name

External site listed by the member

status

Value may be one of pending_payment, blocked, active, pending

title

Title assigned to the member in this group

visited

Member's last visit to the group site, in milliseconds since the epoch

Profile Delete (Leave Group)

DELETE /2/profile/:gid/:mid
  • json
  • xml
Host: api.meetup.com
  • basic
api version 2

Deletes a member's group profile

Request Parameters

All parameters are optional. Only the authorized member is permitted leave groups they do not organize. This method may not be used by organizers to remove members.

exit_comment

Optional message to the organizer when leaving

Response

If successful, this method responds with 200 OK, otherwise a 400 Bad request is returned or 401 if the profile being deleted does not belong to the authorized member. This method requires HTTP DELETE.

API methods