section-group

section-group

Functions

Types and Values

Description

Functions

flickcurl_free_group ()

void
flickcurl_free_group (flickcurl_group *group);

Destructor for group object

Parameters

group

group object

 

flickcurl_free_groups ()

void
flickcurl_free_groups (flickcurl_group **groups_object);

Destructor for array of group object

Parameters

groups_object

group object array

 

flickcurl_groups_browse ()

flickcurl_category *
flickcurl_groups_browse (flickcurl *fc,
                         int cat_id);

Browse the group category tree, finding groups and sub-categories.

Implements flickr.groups.browse (0.13)

Parameters

fc

flickcurl context

 

cat_id

The category id to fetch a list of groups and sub-categories for. If not specified, it defaults to zero, the root of the category tree. (or NULL)

 

Returns

non-0 on failure


flickcurl_groups_getInfo ()

flickcurl_group *
flickcurl_groups_getInfo (flickcurl *fc,
                          const char *group_id,
                          const char *lang);

Get information about a group.

Implements flickr.groups.getInfo (0.13)

Parameters

fc

flickcurl context

 

group_id

The NSID of the group to fetch information for.

 

lang

The language of the group name and description to fetch. If the language is not found, the primary language of the group will be returned (or NULL)

 

Returns

non-0 on failure


flickcurl_groups_join ()

int
flickcurl_groups_join (flickcurl *fc,
                       const char *group_id,
                       const char *accept_rules);

Join a public group as a member.

Implements flickr.groups.join (1.25)

Parameters

fc

flickcurl context

 

group_id

The NSID of the Group in question

 

accept_rules

If the group has rules, they must be displayed to the user prior to joining. Passing a true value for this argument specifies that the application has displayed the group rules to the user, and that the user has agreed to them. (See flickr.groups.getInfo). Probably takes a '1' or '0' value (or NULL)

 

Returns

non-0 on failure


flickcurl_groups_joinRequest ()

int
flickcurl_groups_joinRequest (flickcurl *fc,
                              const char *group_id,
                              const char *message,
                              const char *accept_rules);

Request to join a group that is invitation-only.

Implements flickr.groups.joinRequest (1.25)

Parameters

fc

flickcurl context

 

group_id

The NSID of the group to request joining.

 

message

Message to the administrators.

 

accept_rules

If the group has rules, they must be displayed to the user prior to joining. Passing a true value for this argument specifies that the application has displayed the group rules to the user, and that the user has agreed to them. (See flickr.groups.getInfo). Probably takes a '1' or '0' value.

 

Returns

non-0 on failure


flickcurl_groups_leave ()

int
flickcurl_groups_leave (flickcurl *fc,
                        const char *group_id,
                        const char *delete_photos);

Leave a group.

If the user is the only administrator left, and there are other members, the oldest member will be promoted to administrator.

If the user is the last person in the group, the group will be deleted.

Implements flickr.groups.leave (1.25)

Parameters

fc

flickcurl context

 

group_id

The NSID of the Group to leave

 

delete_photos

Delete all photos by this user from the group. Probably takes a '1' or '0' value (or NULL)

 

Returns

non-0 on failure


flickcurl_free_member ()

void
flickcurl_free_member (flickcurl_member *member_object);

Destructor for member object

Parameters

member_object

member object

 

flickcurl_free_members ()

void
flickcurl_free_members (flickcurl_member **members_object);

Destructor for array of member object

Parameters

members_object

member object array

 

flickcurl_groups_members_getList ()

flickcurl_member **
flickcurl_groups_members_getList (flickcurl *fc,
                                  const char *group_id,
                                  const char *membertypes,
                                  int per_page,
                                  int page);

Get a list of the members of a group.

The call must be signed on behalf of a Flickr member, and the ability to see the group membership will be determined by the Flickr member's group privileges.

Implements flickr.groups.members.getList (1.9) as announced as an experimental API on 2009-02-24: http://tech.groups.yahoo.com/group/yws-flickr/message/4749

Parameters

fc

flickcurl context

 

group_id

Return a list of members for this group. The group must be viewable by the Flickr member on whose behalf the API call is made.

 

membertypes

Comma separated list of member types: 2: member, 3: moderator 4: admin. By default returns all types. (Returning super rare member type "1: narwhal" isn't supported by this API method) (or NULL)

 

per_page

Number of members to return per page. If this argument is omitted, it defaults to 100. The maximum allowed value is 500 (or < 0)

 

page

The page of results to return. If this argument is omitted, it defaults to 1 (or < 0)

 

Returns

list of members or NULL on failure


flickcurl_groups_pools_add ()

int
flickcurl_groups_pools_add (flickcurl *fc,
                            const char *photo_id,
                            const char *group_id);

Add a photo to a group's pool.

Implements flickr.groups.pools.add (0.12)

Parameters

fc

flickcurl context

 

photo_id

The id of the photo to add to the group pool.

 

group_id

The NSID of the group who's pool the photo is to be added to.

 

Returns

non-0 on failure


flickcurl_groups_pools_getContext ()

flickcurl_context **
flickcurl_groups_pools_getContext (flickcurl *fc,
                                   const char *photo_id,
                                   const char *group_id);

Get next and previous photos for a photo in a group pool.

Implements flickr.groups.pools.getContext (0.7)

Parameters

fc

flickcurl context

 

photo_id

photo ID

 

group_id

group ID

 

Returns

an array of size 3 [prev, next, NULL] flickcurl_context* or NULL on error


flickcurl_groups_pools_getGroups ()

flickcurl_group **
flickcurl_groups_pools_getGroups (flickcurl *fc,
                                  int page,
                                  int per_page);

Returns a list of groups to which you can add photos.

Implements flickr.groups.pools.getGroups (0.12)

Parameters

fc

flickcurl context

 

per_page

Number of groups to return per page (default 400, max 400)

 

page

The page of results to return (default 1)

 

Returns

non-0 on failure


flickcurl_groups_pools_getPhotos ()

flickcurl_photo **
flickcurl_groups_pools_getPhotos (flickcurl *fc,
                                  const char *group_id,
                                  const char *tags,
                                  const char *user_id,
                                  const char *extras,
                                  int per_page,
                                  int page);

Returns a list of pool photos for a given group.

See flickcurl_groups_pools_getPhotos_params() for details of the fields.

Implements flickr.groups.pools.getPhotos (0.12)

Parameters

fc

flickcurl context

 

group_id

The id of the group who's pool you which to get the photo list for.

 

tags

A tag to filter the pool with. At the moment only one tag at a time is supported. (or NULL)

 

user_id

The nsid of a user (or NULL). If given, retrieves only photos that the user has contributed to the group pool.

 

extras

A comma-delimited list of extra information to fetch for each returned record (or NULL)

 

per_page

Number of photos to return per page (default 100, max 500)

 

page

The page of results to return (default 1)

 

Returns

non-0 on failure


flickcurl_groups_pools_getPhotos_params ()

flickcurl_photos_list *
flickcurl_groups_pools_getPhotos_params
                               (flickcurl *fc,
                                const char *group_id,
                                const char *tags,
                                const char *user_id,
                                flickcurl_photos_list_params *list_params);

Returns a list of pool photos for a given group.

Currently supported extra fields are: license, date_upload, date_taken, owner_name, icon_server, original_format, last_update, geo, tags, machine_tags.

Optional extra type 'media' that will return an extra media = VALUE for VALUE "photo" or "video". API addition 2008-04-07.

Parameters

fc

flickcurl context

 

group_id

The id of the group who's pool you which to get the photo list for.

 

tags

A tag to filter the pool with. At the moment only one tag at a time is supported. (or NULL)

 

user_id

The nsid of a user (or NULL). If given, retrieves only photos that the user has contributed to the group pool.

 

list_params

flickcurl_photos_list_params result parameters (or NULL)

 

Returns

non-0 on failure


flickcurl_groups_pools_remove ()

int
flickcurl_groups_pools_remove (flickcurl *fc,
                               const char *photo_id,
                               const char *group_id);

Remove a photo from a group pool.

Implements flickr.groups.pools.remove (0.12)

Parameters

fc

flickcurl context

 

photo_id

The id of the photo to remove from the group pool.

 

group_id

The NSID of the group who's pool the photo is to removed from.

 

Returns

non-0 on failure


flickcurl_groups_search ()

flickcurl_group **
flickcurl_groups_search (flickcurl *fc,
                         const char *text,
                         int per_page,
                         int page);

Search for groups. 18+ groups will only be returned for authenticated calls where the authenticated user is over 18.

Implements flickr.groups.search (0.13)

Parameters

fc

flickcurl context

 

text

The text to search for.

 

per_page

Number of groups to return per page, default 100, max 500 (or NULL)

 

page

The page of results to return, default 1 (or NULL)

 

Returns

non-0 on failure

Types and Values

flickcurl_group

typedef struct {
  char* nsid;
  char* name;
  char* description;
  char* lang;
  int is_admin;
  int is_pool_moderated;
  int is_eighteenplus;
  int privacy;
  int photos;
  int iconserver;
  int members;
  int throttle_count;
  char* throttle_mode;
  int throttle_remaining;
  int iconfarm;
  int is_moderator;
  int is_member;
  char* rules;
  int pool_count;
  int topic_count;
  int photos_ok;
  int videos_ok;
  int images_ok;
  int screens_ok;
  int art_ok;
  int safe_ok;
  int moderate_ok;
  int restricted_ok;
  int has_geo;
} flickcurl_group;

A group.

Members

char *nsid;

NSID

 

char *name;

Group Name

 

char *description;

Description

 

char *lang;

Language

 

int is_admin;

user is a group admin

 

int is_pool_moderated;

is the pool moderated

 

int is_eighteenplus;

NOT USED (will always be 0)

 

int privacy;

privacy level

 

int photos;

photos in group count

 

int iconserver;

icon server ID

 

int members;

member count

 

int throttle_count;

throttle count

 

char *throttle_mode;

throttle mode (day, ...)

 

int throttle_remaining;

throttle remaining

 

int iconfarm;

icon farm ID

 

int is_moderator;

user is a moderator

 

int is_member;

user is a member

 

char *rules;

group rules

 

int pool_count;

pool count

 

int topic_count;

topic count

 

int photos_ok;

photos are ok

 

int videos_ok;

videos are ok

 

int images_ok;

images are ok

 

int screens_ok;

screens are ok

 

int art_ok;

art is ok

 

int safe_ok;

safe content is ok

 

int moderate_ok;

moderate content is ok

 

int restricted_ok;

restricted content is ok

 

int has_geo;

has geolocation

 

flickcurl_member

typedef struct {
  char *nsid;
  char *username;
  int iconserver;
  int iconfarm;
  int member_type;
} flickcurl_member;

Member in a group

Members

char *nsid;

NSID

 

char *username;

User name

 

int iconserver;

icon server

 

int iconfarm;

icon farm

 

int member_type;

member type - 1: narwhal, 2: member, 3: moderator 4: admin