Flickcurl: Flickr API coverage

Dave Beckett

This page summarizes the Flickr API calls that are supported by Flickcurl. API calls are marked as follows as supported or unsupported.

Current Flickr API coverage by Flickcurl: 90.4% (188/208)

Flickr API

Photo Upload API

activity

auth

auth.oauth

blogs

cameras

collections

commons

contacts

favorites

galleries

groups

groups.discuss.replies

groups.discuss.topics

groups.members

groups.pools

interestingness

machinetags

panda

people

photos

photos.comments

photos.geo

photos.licenses

photos.notes

photos.people

photos.suggestions

photos.transform

photos.upload

photosets

photosets.comments

places

prefs

push

reflection

stats

tags

test

urls

Changes

1.25: flickr.contacts.getTaggingSuggestions, flickr.groups.join, flickr.groups.joinRequest, flickr.groups.leave, flickr.people.getGroups, flickr.tags.getMostFrequentlyUsed (6 new)

flickcurl_contact** flickcurl_contacts_getTaggingSuggestions(flickcurl* fc, const char* include_self, const char* include_address_book, int page, int per_page);
int flickcurl_groups_join(flickcurl* fc, const char* group_id, const char* accept_rules);
int flickcurl_groups_joinRequest(flickcurl* fc, const char* group_id, const char* message, const char* accept_rules);
int flickcurl_groups_leave(flickcurl* fc, const char* group_id, const char* delete_photos);
flickcurl_group** flickcurl_people_getGroups(flickcurl* fc, const char* user_id, const char* extras);
flickcurl_tag** flickcurl_tags_getMostFrequentlyUsed(flickcurl* fc);

1.23: flickr.auth.oauth.getAccessToken (1 new)

int flickcurl_auth_oauth_getAccessToken(flickcurl* fc);

1.22: flickr.favorites.getContext (1 new)

flickcurl_photos_list** flickcurl_favorites_getContext(flickcurl* fc, const char* photo_id, const char* user_id, int num_prev, int num_next, const char* extras);

1.19: flickr.photosets.removePhotos, flickr.photosets.reorderPhotos, flickr.photosets.setPrimaryPhoto, flickr.stats.getCSVFiles (4 new)

int flickcurl_photosets_removePhotos(flickcurl* fc, const char* photoset_id, const char** photo_ids_array);
int flickcurl_photosets_reorderPhotos(flickcurl* fc, const char* photoset_id, const char** photo_ids_array);
int flickcurl_photosets_setPrimaryPhoto(flickcurl* fc, const char* photoset_id, const char* photo_id);
int flickcurl_stats_getCSVFiles(flickcurl* fc);

1.18: flickr.galleries.create, flickr.galleries.editMeta, flickr.galleries.editPhoto, flickr.galleries.editPhotos, flickr.galleries.getInfo, flickr.galleries.getPhotos, flickr.people.getPhotos, flickr.urls.lookupGallery (8 new)

char* flickcurl_galleries_create(flickcurl* fc, const char* title, const char* description, const char* primary_photo_id, char** gallery_url_p);
int flickcurl_galleries_editMeta(flickcurl* fc, const char* gallery_id, const char* title, const char* description);
int flickcurl_galleries_editPhoto(flickcurl* fc, const char* gallery_id, const char* photo_id, const char* new_comment);
int flickcurl_galleries_editPhotos(flickcurl* fc, const char* gallery_id, const char* primary_photo_id, const char** photo_ids_array);
flickcurl_gallery* flickcurl_galleries_getInfo(flickcurl* fc, const char* gallery_id);
flickcurl_photo** flickcurl_galleries_getPhotos(flickcurl* fc, const char* gallery_id, const char* extras, int per_page, int page);
flickcurl_photo** flickcurl_people_getPhotos(flickcurl* fc, const char* user_id, int safe_search, const char* min_upload_date, const char* max_upload_date, const char* min_taken_date, const char* max_taken_date, int content_type, int privacy_filter, const char* extras, int per_page, int page);
char* flickcurl_urls_lookupGallery(flickcurl* fc, const char* url);

1.17: flickr.galleries.addPhoto, flickr.galleries.getList, flickr.galleries.getListForPhoto, flickr.people.getPhotosOf, flickr.photos.people.add, flickr.photos.people.delete, flickr.photos.people.deleteCoords, flickr.photos.people.editCoords, flickr.photos.people.getList, flickr.stats.getCollectionDomains, flickr.stats.getCollectionReferrers, flickr.stats.getCollectionStats, flickr.stats.getPhotoDomains, flickr.stats.getPhotoReferrers, flickr.stats.getPhotosetDomains, flickr.stats.getPhotosetReferrers, flickr.stats.getPhotosetStats, flickr.stats.getPhotoStats, flickr.stats.getPhotostreamDomains, flickr.stats.getPhotostreamReferrers, flickr.stats.getPhotostreamStats, flickr.stats.getPopularPhotos, flickr.stats.getTotalViews (23 new)

int flickcurl_galleries_addPhoto(flickcurl* fc, const char* gallery_id, const char* photo_id, const char* comment_text);
flickcurl_gallery** flickcurl_galleries_getList(flickcurl* fc, const char* user_id, int per_page, int page);
flickcurl_gallery** flickcurl_galleries_getListForPhoto(flickcurl* fc, const char* photo_id, int per_page, int page);
flickcurl_photo** flickcurl_people_getPhotosOf(flickcurl* fc, const char* user_id, const char* extras, int per_page, int page);
int flickcurl_photos_people_add(flickcurl* fc, const char* photo_id, const char* user_id, int person_x, int person_y, int person_w, int person_h);
int flickcurl_photos_people_delete(flickcurl* fc, const char* photo_id, const char* user_id);
int flickcurl_photos_people_deleteCoords(flickcurl* fc, const char* photo_id, const char* user_id);
int flickcurl_photos_people_editCoords(flickcurl* fc, const char* photo_id, const char* user_id, int person_x, int person_y, int person_w, int person_h);
flickcurl_person** flickcurl_photos_people_getList(flickcurl* fc, const char* photo_id);
flickcurl_stat** flickcurl_stats_getCollectionDomains(flickcurl* fc, const char* date, const char* collection_id, int per_page, int page);
flickcurl_stat** flickcurl_stats_getCollectionReferrers(flickcurl* fc, const char* date, const char* domain, const char* collection_id, int per_page, int page);
int flickcurl_stats_getCollectionStats(flickcurl* fc, const char* date, const char* collection_id);
flickcurl_stat** flickcurl_stats_getPhotoDomains(flickcurl* fc, const char* date, const char* photo_id, int per_page, int page);
flickcurl_stat** flickcurl_stats_getPhotoReferrers(flickcurl* fc, const char* date, const char* domain, const char* photo_id, int per_page, int page);
flickcurl_stat** flickcurl_stats_getPhotosetDomains(flickcurl* fc, const char* date, const char* photoset_id, int per_page, int page);
flickcurl_stat** flickcurl_stats_getPhotosetReferrers(flickcurl* fc, const char* date, const char* domain, const char* photoset_id, int per_page, int page);
int flickcurl_stats_getPhotosetStats(flickcurl* fc, const char* date, const char* photoset_id);
flickcurl_stat* flickcurl_stats_getPhotoStats(flickcurl* fc, const char* date, const char* photo_id);
flickcurl_stat** flickcurl_stats_getPhotostreamDomains(flickcurl* fc, const char* date, int per_page, int page);
flickcurl_stat** flickcurl_stats_getPhotostreamReferrers(flickcurl* fc, const char* date, const char* domain, int per_page, int page);
int flickcurl_stats_getPhotostreamStats(flickcurl* fc, const char* date);
flickcurl_photo** flickcurl_stats_getPopularPhotos(flickcurl* fc, const char* date, const char* sort, int per_page, int page, const char* extras);
flickcurl_view_stats* flickcurl_stats_getTotalViews(flickcurl* fc, const char* date);

1.12: flickr.blogs.getServices, flickr.collections.getInfo, flickr.collections.getTree, flickr.machinetags.getRecentValues, flickr.photos.comments.getRecentForContacts, flickr.places.getTopPlacesList (6 new)

flickcurl_blog_service** flickcurl_blogs_getServices(flickcurl* fc);
flickcurl_collection* flickcurl_collections_getInfo(flickcurl* fc, const char* collection_id);
flickcurl_collection* flickcurl_collections_getTree(flickcurl* fc, const char* collection_id, const char* user_id);
flickcurl_tag_predicate_value** flickcurl_machinetags_getRecentValues(flickcurl* fc, const char *nspace, const char* predicate, int added_since);
flickcurl_photos_list* flickcurl_photos_comments_getRecentForContacts_params(flickcurl* fc, int date_lastcomment, const char* contacts_filter, flickcurl_photos_list_params* list_params);
flickcurl_place** flickcurl_places_getTopPlacesList(flickcurl* fc, flickcurl_place_type place_type, const char* date, int woe_id, const char* place_id);

1.9: flickr.groups.members.getList, flickr.panda.getList, flickr.panda.getPhotos (3 new)

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

1.8: flickr.commons.getInstitutions, flickr.contacts.getListRecentlyUploaded, flickr.photos.geo.batchCorrectLocation, flickr.photos.geo.correctLocation, flickr.photos.geo.photosForLocation, flickr.photos.geo.setContext, flickr.places.getPlaceTypes, flickr.places.getShapeHistory, flickr.places.placesForBoundingBox, flickr.places.placesForContacts, flickr.places.placesForTags, flickr.places.tagsForPlace (12 new)

flickcurl_institution** flickcurl_commons_getInstitutions(flickcurl* fc);
flickcurl_contact** flickcurl_contacts_getListRecentlyUploaded(flickcurl* fc, int date_lastupload, const char* filter);
int flickcurl_photos_geo_batchCorrectLocation(flickcurl* fc, flickcurl_location* location, const char* place_id, int woe_id);
int flickcurl_photos_geo_correctLocation(flickcurl* fc, const char* photo_id, const char* place_id, int woe_id);
flickcurl_photo** flickcurl_photos_geo_photosForLocation(flickcurl* fc, flickcurl_location* location, const char* extras, int per_page, int page);
int flickcurl_photos_geo_setContext(flickcurl* fc, const char* photo_id, int context);
flickcurl_place_type_info** flickcurl_places_getPlaceTypes(flickcurl* fc);
flickcurl_shapedata** flickcurl_places_getShapeHistory(flickcurl* fc, const char* place_id, int woe_id);
flickcurl_place** flickcurl_places_placesForBoundingBox(flickcurl* fc, flickcurl_place_type place_type, double minimum_longitude, double minimum_latitude, double maximum_longitude, double maximum_latitude);
flickcurl_place** flickcurl_places_placesForContacts(flickcurl* fc, flickcurl_place_type place_type, int woe_id, const char* place_id, int threshold, const char* contacts, int min_upload_date, int max_upload_date, int min_taken_date, int max_taken_date);
int flickcurl_places_placesForTags(flickcurl* fc, flickcurl_place_type place_type, int woe_id, const char* place_id, const char* threshold, const char* tags, const char* tag_mode, const char* machine_tags, const char* machine_tag_mode, const char* min_upload_date, const char* max_upload_date, const char* min_taken_date, const char* max_taken_date);
flickcurl_tag** flickcurl_places_tagsForPlace(flickcurl* fc, int woe_id, const char* place_id, int min_upload_date, int max_upload_date, int min_taken_date, int max_taken_date);

1.7: flickr.machinetags.getNamespaces, flickr.machinetags.getPairs, flickr.machinetags.getPredicates, flickr.machinetags.getValues, flickr.places.getChildrenWithPhotosPublic, flickr.places.getInfo, flickr.places.getInfoByUrl, flickr.tags.getClusterPhotos (8 new)

flickcurl_tag_namespace** flickcurl_machinetags_getNamespaces(flickcurl* fc, const char* predicate, int per_page, int page);
flickcurl_tag_predicate_value** flickcurl_machinetags_getPairs(flickcurl* fc, const char *nspace, const char* predicate, int per_page, int page);
flickcurl_tag_predicate_value** flickcurl_machinetags_getPredicates(flickcurl* fc, const char *nspace, int per_page, int page);
flickcurl_tag_predicate_value** flickcurl_machinetags_getValues(flickcurl* fc, const char *nspace, const char* predicate, int per_page, int page);
flickcurl_place** flickcurl_places_getChildrenWithPhotosPublic(flickcurl* fc, const char* place_id, const char* woe_id);
flickcurl_place* flickcurl_places_getInfo(flickcurl* fc, const char* place_id, const char* woe_id);
flickcurl_place* flickcurl_places_getInfoByUrl(flickcurl* fc, const char* url);
flickcurl_photos_list* flickcurl_tags_getClusterPhotos(flickcurl* fc, const char* tag, const char* cluster_id, flickcurl_photos_list_params* list_params);

1.6: flickr.places.placesForUser (1 new)

flickcurl_place** flickcurl_places_placesForUser(flickcurl* fc, flickcurl_place_type place_type, int woe_id, const char* place_id, int threshold);

1.5: flickr.tags.getClusters (1 new)

flickcurl_tag_clusters* flickcurl_tags_getClusters(flickcurl* fc, const char* tag);

1.4: flickr.prefs.getGeoPerms (1 new)

int flickcurl_prefs_getGeoPerms(flickcurl* fc);

1.3: flickr.prefs.getContentType, flickr.prefs.getHidden, flickr.prefs.getPrivacy, flickr.prefs.getSafetyLevel (4 new)

int flickcurl_prefs_getContentType(flickcurl* fc);
int flickcurl_prefs_getHidden(flickcurl* fc);
int flickcurl_prefs_getPrivacy(flickcurl* fc);
int flickcurl_prefs_getSafetyLevel(flickcurl* fc);

1.1: flickr.places.find, flickr.places.findByLatLon (2 new)

flickcurl_place** flickcurl_places_find(flickcurl* fc, const char* query);
flickcurl_place* flickcurl_places_findByLatLon(flickcurl* fc, double lat, double lon, int accuracy);

1.0: flickr.activity.userComments, flickr.activity.userPhotos, flickr.blogs.getList, flickr.blogs.postPhoto, flickr.favorites.add, flickr.favorites.getList, flickr.favorites.getPublicList, flickr.favorites.remove, flickr.places.resolvePlaceId, flickr.places.resolvePlaceURL, flickr.test.login, flickr.test.null (12 new)

flickcurl_activity** flickcurl_activity_userComments(flickcurl* fc, int per_page, int page);
flickcurl_activity** flickcurl_activity_userPhotos(flickcurl* fc, const char* timeframe, int per_page, int page);
flickcurl_blog** flickcurl_blogs_getList(flickcurl* fc);
int flickcurl_blogs_postPhoto(flickcurl* fc, const char* blog_id, const char* photo_id, const char* title, const char* description, const char* blog_password);
int flickcurl_favorites_add(flickcurl* fc, const char* photo_id);
flickcurl_photos_list* flickcurl_favorites_getList_params(flickcurl* fc, const char* user_id, flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_favorites_getPublicList_params(flickcurl* fc, const char* user_id, flickcurl_photos_list_params* list_params);
int flickcurl_favorites_remove(flickcurl* fc, const char* photo_id);
flickcurl_place* flickcurl_places_resolvePlaceId(flickcurl* fc, const char* place_id);
flickcurl_place* flickcurl_places_resolvePlaceURL(flickcurl* fc, const char* url);
char* flickcurl_test_login(flickcurl* fc);
int flickcurl_test_null(flickcurl* fc);

0.13: flickr.groups.browse, flickr.groups.getInfo, flickr.groups.search, flickr.interestingness.getList, flickr.people.getPublicGroups, flickr.people.getUploadStatus, flickr.photos.getCounts, flickr.photos.getSizes, flickr.photos.transform.rotate, flickr.photos.upload.checkTickets, flickr.photosets.addPhoto, flickr.photosets.create, flickr.photosets.delete, flickr.photosets.editMeta, flickr.photosets.editPhotos, flickr.photosets.getInfo, flickr.photosets.getList, flickr.photosets.getPhotos, flickr.photosets.orderSets, flickr.photosets.removePhoto (20 new)

flickcurl_category* flickcurl_groups_browse(flickcurl* fc, int cat_id);
flickcurl_group* flickcurl_groups_getInfo(flickcurl* fc, const char* group_id, const char* lang);
flickcurl_group** flickcurl_groups_search(flickcurl* fc, const char* text, int per_page, int page);
flickcurl_photos_list* flickcurl_interestingness_getList_params(flickcurl* fc, const char* date, flickcurl_photos_list_params* list_params);
flickcurl_group** flickcurl_people_getPublicGroups(flickcurl* fc, const char* user_id);
flickcurl_user_upload_status* flickcurl_people_getUploadStatus(flickcurl* fc);
int** flickcurl_photos_getCounts(flickcurl* fc, const char** dates_array, const char** taken_dates_array);
flickcurl_size** flickcurl_photos_getSizes(flickcurl* fc, const char* photo_id);
int flickcurl_photos_transform_rotate(flickcurl* fc, const char* photo_id, int degrees);
flickcurl_ticket** flickcurl_photos_upload_checkTickets(flickcurl* fc, const char** tickets_ids);
int flickcurl_photosets_addPhoto(flickcurl* fc, const char* photoset_id, const char* photo_id);
char* flickcurl_photosets_create(flickcurl* fc, const char* title, const char* description, const char* primary_photo_id, char** photoset_url_p);
int flickcurl_photosets_delete(flickcurl* fc, const char* photoset_id);
int flickcurl_photosets_editMeta(flickcurl* fc, const char* photoset_id, const char* title, const char* description);
int flickcurl_photosets_editPhotos(flickcurl* fc, const char* photoset_id, const char* primary_photo_id, const char** photo_ids_array);
flickcurl_photoset* flickcurl_photosets_getInfo(flickcurl* fc, const char* photoset_id);
flickcurl_photoset** flickcurl_photosets_getList(flickcurl* fc, const char* user_id);
flickcurl_photos_list* flickcurl_photosets_getPhotos_params(flickcurl* fc, const char* photoset_id, int privacy_filter, flickcurl_photos_list_params* list_params);
int flickcurl_photosets_orderSets(flickcurl* fc, const char** photoset_ids_array);
int flickcurl_photosets_removePhoto(flickcurl* fc, const char* photoset_id, const char* photo_id);

0.12: flickr.groups.pools.add, flickr.groups.pools.getGroups, flickr.groups.pools.getPhotos, flickr.groups.pools.remove, flickr.people.getPublicPhotos, flickr.photos.getContactsPublicPhotos, flickr.photos.getExif, flickr.photos.getFavorites, flickr.photos.getNotInSet, flickr.photos.getRecent, flickr.photos.getUntagged, flickr.photos.getWithGeoData, flickr.photos.getWithoutGeoData, flickr.photos.recentlyUpdated, flickr.photos.geo.getLocation, flickr.photos.geo.getPerms, flickr.photos.geo.removeLocation, flickr.photos.geo.setLocation, flickr.photos.geo.setPerms, flickr.photos.licenses.setLicense, flickr.photos.notes.add, flickr.photos.notes.delete, flickr.photos.notes.edit (23 new)

int flickcurl_groups_pools_add(flickcurl* fc, const char* photo_id, const char* group_id);
flickcurl_group** flickcurl_groups_pools_getGroups(flickcurl* fc, int page, int per_page);
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);
int flickcurl_groups_pools_remove(flickcurl* fc, const char* photo_id, const char* group_id);
flickcurl_photos_list* flickcurl_people_getPublicPhotos_params(flickcurl* fc, const char* user_id,  flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_photos_getContactsPublicPhotos_params(flickcurl* fc, const char* user_id, int photo_count, int just_friends,  int single_photo, int include_self, flickcurl_photos_list_params* list_params);
flickcurl_exif** flickcurl_photos_getExif(flickcurl* fc, const char* photo_id, const char* secret);
flickcurl_person** flickcurl_photos_getFavorites(flickcurl* fc, const char* photo_id, int page, int per_page);
flickcurl_photos_list* flickcurl_photos_getNotInSet_params(flickcurl* fc, int min_upload_date, int max_upload_date, const char* min_taken_date, const char* max_taken_date, int privacy_filter, flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_photos_getRecent_params(flickcurl* fc, flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_photos_getUntagged_params(flickcurl* fc, int min_upload_date, int max_upload_date, const char* min_taken_date, const char* max_taken_date, int privacy_filter, flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_photos_getWithGeoData_params(flickcurl* fc, int min_upload_date, int max_upload_date, const char* min_taken_date, const char* max_taken_date, int privacy_filter, flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_photos_getWithoutGeoData_params(flickcurl* fc, int min_upload_date, int max_upload_date, const char* min_taken_date, const char* max_taken_date, int privacy_filter, flickcurl_photos_list_params* list_params);
flickcurl_photos_list* flickcurl_photos_recentlyUpdated_params(flickcurl* fc, int min_date, flickcurl_photos_list_params* list_params);
flickcurl_location* flickcurl_photos_geo_getLocation(flickcurl* fc, const char* photo_id);
flickcurl_perms* flickcurl_photos_geo_getPerms(flickcurl* fc, const char* photo_id);
int flickcurl_photos_geo_removeLocation(flickcurl* fc, const char* photo_id);
int flickcurl_photos_geo_setLocation(flickcurl* fc, const char* photo_id, flickcurl_location* location);
int flickcurl_photos_geo_setPerms(flickcurl* fc, const char* photo_id, flickcurl_perms* perms);
int flickcurl_photos_licenses_setLicense(flickcurl* fc, const char* photo_id, int license_id);
char* flickcurl_photos_notes_add(flickcurl* fc, const char* photo_id, int note_x, int note_y, int note_w, int note_h, const char* note_text);
int flickcurl_photos_notes_delete(flickcurl* fc, const char* note_id);
int flickcurl_photos_notes_edit(flickcurl* fc, const char* note_id, int note_x, int note_y, int note_w, int note_h, const char* note_text);

0.11: flickr.contacts.getList, flickr.contacts.getPublicList, flickr.photos.getContactsPhotos, flickr.photos.getPerms, flickr.photos.search, flickr.photos.setContentType, flickr.photos.setDates, flickr.photos.setMeta, flickr.photos.setPerms, flickr.photos.setSafetyLevel (10 new)

flickcurl_contact** flickcurl_contacts_getList(flickcurl* fc, const char* filter, int page, int per_page);
flickcurl_contact** flickcurl_contacts_getPublicList(flickcurl* fc, const char* user_id, int page, int per_page);
flickcurl_photos_list* flickcurl_photos_getContactsPhotos_params(flickcurl* fc, int contact_count, int just_friends, int single_photo, int include_self, flickcurl_photos_list_params* list_params);
flickcurl_perms* flickcurl_photos_getPerms(flickcurl* fc, const char* photo_id);
flickcurl_photos_list* flickcurl_photos_search_params(flickcurl* fc, flickcurl_search_params* params, flickcurl_photos_list_params* list_params);
int flickcurl_photos_setContentType(flickcurl* fc, const char* photo_id, int content_type);
int flickcurl_photos_setDates(flickcurl* fc, const char* photo_id, int date_posted, int date_taken, int date_taken_granularity);
int flickcurl_photos_setMeta(flickcurl* fc, const char* photo_id, const char* title, const char* description);
int flickcurl_photos_setPerms(flickcurl* fc, const char* photo_id, flickcurl_perms* perms);
int flickcurl_photos_setSafetyLevel(flickcurl* fc, const char* photo_id, int safety_level, int hidden);

0.10: flickr.photos.comments.addComment, flickr.photos.comments.deleteComment, flickr.photos.comments.editComment, flickr.photos.comments.getList, flickr.photosets.comments.addComment, flickr.photosets.comments.deleteComment, flickr.photosets.comments.editComment, flickr.photosets.comments.getList, flickr.reflection.getMethods, flickr.reflection.getMethodInfo, Uploading Photos, Replacing Photos, Asynchronous Uploading (13 new)

char* flickcurl_photos_comments_addComment(flickcurl* fc, const char* photo_id, const char* comment_text);
int flickcurl_photos_comments_deleteComment(flickcurl* fc, const char* comment_id);
int flickcurl_photos_comments_editComment(flickcurl* fc, const char* comment_id, const char* comment_text);
flickcurl_comment** flickcurl_photos_comments_getList(flickcurl* fc, const char* photo_id);
char* flickcurl_photosets_comments_addComment(flickcurl* fc, const char* photoset_id, const char* comment_text);
int flickcurl_photosets_comments_deleteComment(flickcurl* fc, const char* comment_id);
int flickcurl_photosets_comments_editComment(flickcurl* fc, const char* comment_id, const char* comment_text);
flickcurl_comment** flickcurl_photosets_comments_getList(flickcurl* fc, const char* photoset_id);
char** flickcurl_reflection_getMethods(flickcurl* fc);
flickcurl_method* flickcurl_reflection_getMethodInfo(flickcurl* fc, const char* name);

0.9: flickr.auth.checkToken, flickr.auth.getFrob, flickr.auth.getToken, flickr.photos.addTags, flickr.photos.delete, flickr.photos.removeTag, flickr.photos.setTags, flickr.tags.getHotList, flickr.tags.getListPhoto, flickr.tags.getListUser, flickr.tags.getListUserPopular, flickr.tags.getListUserRaw, flickr.tags.getRelated, flickr.urls.getGroup, flickr.urls.getUserPhotos, flickr.urls.getUserProfile, flickr.urls.lookupGroup (17 new)

char* flickcurl_auth_checkToken(flickcurl* fc, const char* token);
char* flickcurl_auth_getFrob(flickcurl* fc);
char* flickcurl_auth_getToken(flickcurl* fc, const char* frob);
int flickcurl_photos_addTags(flickcurl* fc, const char* photo_id, const char* tags);
int flickcurl_photos_delete(flickcurl* fc, const char* photo_id);
int flickcurl_photos_removeTag(flickcurl* fc, const char* tag_id);
int flickcurl_photos_setTags(flickcurl* fc, const char* photo_id, const char* tags);
flickcurl_tag** flickcurl_tags_getHotList(flickcurl* fc, const char* period, int tag_count);
flickcurl_tag** flickcurl_tags_getListPhoto(flickcurl* fc, const char* photo_id);
flickcurl_tag** flickcurl_tags_getListUser(flickcurl* fc, const char* user_id);
flickcurl_tag** flickcurl_tags_getListUserPopular(flickcurl* fc, const char* user_id, int pop_count);
flickcurl_tag** flickcurl_tags_getListUserRaw(flickcurl* fc, const char* tag);
flickcurl_tag** flickcurl_tags_getRelated(flickcurl* fc, const char* tag);
char* flickcurl_urls_getGroup(flickcurl* fc, const char* group_id);
char* flickcurl_urls_getUserPhotos(flickcurl* fc, const char* user_id);
char* flickcurl_urls_getUserProfile(flickcurl* fc, const char* user_id);
char* flickcurl_urls_lookupGroup(flickcurl* fc, const char* url);

0.8: flickr.people.findByEmail, flickr.people.findByUsername (2 new)

char* flickcurl_people_findByEmail(flickcurl* fc, const char* email);
char* flickcurl_people_findByUsername(flickcurl* fc, const char* username);

0.7: flickr.groups.pools.getContext, flickr.photos.getAllContexts, flickr.photos.getContext, flickr.photosets.getContext (4 new)

flickcurl_context** flickcurl_groups_pools_getContext(flickcurl* fc, const char* photo_id, const char* group_id);
flickcurl_context** flickcurl_photos_getAllContexts(flickcurl* fc, const char* photo_id);
flickcurl_context** flickcurl_photos_getContext(flickcurl* fc, const char* photo_id);
flickcurl_context** flickcurl_photosets_getContext(flickcurl* fc, const char* photo_id, const char* photoset_id);

0.6: flickr.people.getInfo, flickr.photos.licenses.getInfo, flickr.urls.lookupUser (3 new)

flickcurl_person* flickcurl_people_getInfo(flickcurl* fc, const char* user_id);
flickcurl_license** flickcurl_photos_licenses_getInfo(flickcurl *fc);
char* flickcurl_urls_lookupUser(flickcurl* fc, const char* url);

0.5: flickr.auth.getFullToken, flickr.photos.getInfo, flickr.test.echo (3 new)

char* flickcurl_auth_getFullToken(flickcurl* fc, const char* frob);
flickcurl_photo* flickcurl_photos_getInfo(flickcurl *fc, const char* photo_id);
int flickcurl_test_echo(flickcurl* fc, const char* key, const char* value);

Copyright (C) 2007-2011 Dave Beckett