Photo

Photo — Photo.

Synopsis

                    flickcurl_photo;
void                flickcurl_free_photo                (flickcurl_photo *photo);
void                flickcurl_free_photos               (flickcurl_photo **photos);
const char *        flickcurl_get_photo_field_label     (flickcurl_photo_field_type field);
char *              flickcurl_photo_as_page_uri         (flickcurl_photo *photo);
char *              flickcurl_photo_as_short_uri        (flickcurl_photo *photo);
char *              flickcurl_photo_as_source_uri       (flickcurl_photo *photo,
                                                         const char c);
char *              flickcurl_photo_as_user_icon_uri    (flickcurl_photo *photo);
char *              flickcurl_photo_id_as_short_uri     (char *photo_id);
char *              flickcurl_source_uri_as_photo_id    (const char *uri);
                    flickcurl_photo_field;
enum                flickcurl_photo_field_type;
enum                flickcurl_field_value_type;
int                 flickcurl_photos_addTags            (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *tags);
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);
flickcurl_photos_list * flickcurl_photos_comments_getRecentForContacts_params
                                                        (flickcurl *fc,
                                                         int date_lastcomment,
                                                         const char *contacts_filter,
                                                         flickcurl_photos_list_params *list_params);
int                 flickcurl_photos_delete             (flickcurl *fc,
                                                         const char *photo_id);
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_location * flickcurl_photos_geo_getLocation   (flickcurl *fc,
                                                         const char *photo_id);
flickcurl_perms *   flickcurl_photos_geo_getPerms       (flickcurl *fc,
                                                         const char *photo_id);
flickcurl_photo **  flickcurl_photos_geo_photosForLocation
                                                        (flickcurl *fc,
                                                         flickcurl_location *location,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);
flickcurl_photos_list * flickcurl_photos_geo_photosForLocation_params
                                                        (flickcurl *fc,
                                                         flickcurl_location *location,
                                                         flickcurl_photos_list_params *list_params);
int                 flickcurl_photos_geo_removeLocation (flickcurl *fc,
                                                         const char *photo_id);
int                 flickcurl_photos_geo_setContext     (flickcurl *fc,
                                                         const char *photo_id,
                                                         int context);
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);
flickcurl_context ** flickcurl_photos_getAllContexts    (flickcurl *fc,
                                                         const char *photo_id);
flickcurl_photo **  flickcurl_photos_getContactsPhotos  (flickcurl *fc,
                                                         int contact_count,
                                                         int just_friends,
                                                         int single_photo,
                                                         int include_self,
                                                         const char *extras);
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_photo **  flickcurl_photos_getContactsPublicPhotos
                                                        (flickcurl *fc,
                                                         const char *user_id,
                                                         int photo_count,
                                                         int just_friends,
                                                         int single_photo,
                                                         int include_self,
                                                         const char *extras);
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_context ** flickcurl_photos_getContext        (flickcurl *fc,
                                                         const char *photo_id);
int **              flickcurl_photos_getCounts          (flickcurl *fc,
                                                         const char **dates_array,
                                                         const char **taken_dates_array);
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_photo *   flickcurl_photos_getInfo            (flickcurl *fc,
                                                         const char *photo_id);
flickcurl_photo *   flickcurl_photos_getInfo2           (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *secret);
flickcurl_photo **  flickcurl_photos_getNotInSet        (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int 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_perms *   flickcurl_photos_getPerms           (flickcurl *fc,
                                                         const char *photo_id);
flickcurl_photo **  flickcurl_photos_getRecent          (flickcurl *fc,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);
flickcurl_photos_list * flickcurl_photos_getRecent_params
                                                        (flickcurl *fc,
                                                         flickcurl_photos_list_params *list_params);
flickcurl_size **   flickcurl_photos_getSizes           (flickcurl *fc,
                                                         const char *photo_id);
flickcurl_photo **  flickcurl_photos_getUntagged        (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);
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_photo **  flickcurl_photos_getWithGeoData     (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);
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_photo **  flickcurl_photos_getWithoutGeoData  (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);
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_license ** flickcurl_photos_licenses_getInfo  (flickcurl *fc);
flickcurl_license * flickcurl_photos_licenses_getInfo_by_id
                                                        (flickcurl *fc,
                                                         int id);
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);
flickcurl_photo **  flickcurl_photos_recentlyUpdated    (flickcurl *fc,
                                                         int min_date,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);
flickcurl_photos_list * flickcurl_photos_recentlyUpdated_params
                                                        (flickcurl *fc,
                                                         int min_date,
                                                         flickcurl_photos_list_params *list_params);
int                 flickcurl_photos_removeTag          (flickcurl *fc,
                                                         const char *tag_id);
flickcurl_upload_status * flickcurl_photos_replace      (flickcurl *fc,
                                                         const char *photo_file,
                                                         const char *photo_id,
                                                         int async);
flickcurl_photo **  flickcurl_photos_search             (flickcurl *fc,
                                                         flickcurl_search_params *params);
flickcurl_photos_list * flickcurl_photos_search_params  (flickcurl *fc,
                                                         flickcurl_search_params *params,
                                                         flickcurl_photos_list_params *list_params);
                    flickcurl_search_params;
int                 flickcurl_search_params_init        (flickcurl_search_params *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);
int                 flickcurl_photos_setTags            (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *tags);
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);
flickcurl_upload_status * flickcurl_photos_upload_params
                                                        (flickcurl *fc,
                                                         flickcurl_upload_params *params);

Description

Photo.

Details

flickcurl_photo

typedef struct {
  char *id;
  char *uri;
  
  flickcurl_tag** tags;
  int tags_count;
  
  flickcurl_photo_field fields[PHOTO_FIELD_LAST + 1];

  flickcurl_place* place;

  flickcurl_video* video;

  char *media_type;

  flickcurl_note** notes;
  int notes_count;
} flickcurl_photo;

A photo or video.

char *id;

photo/video ID

char *uri;

photo/video page URI

flickcurl_tag **tags;

array of tags (may be NULL)

int tags_count;

size of tags array

flickcurl_photo_field fields[PHOTO_FIELD_LAST + 1];

metadata fields

flickcurl_place *place;

place

flickcurl_video *video;

video (may be NULL)

char *media_type;

"photo" or "video"

flickcurl_note **notes;

array of notes (may be NULL)

int notes_count;

size of notes array

flickcurl_free_photo ()

void                flickcurl_free_photo                (flickcurl_photo *photo);

Destructor for photo object

photo :

photo object

flickcurl_free_photos ()

void                flickcurl_free_photos               (flickcurl_photo **photos);

Destructor for array of photo objects

photos :

photo object array

flickcurl_get_photo_field_label ()

const char *        flickcurl_get_photo_field_label     (flickcurl_photo_field_type field);

Get label for photo field.

field :

field enum

Returns :

label string or NULL if none valid

flickcurl_photo_as_page_uri ()

char *              flickcurl_photo_as_page_uri         (flickcurl_photo *photo);

Get a photo's page URI

photo :

photo object

Returns :

new source URI string or NULL on failure

flickcurl_photo_as_short_uri ()

char *              flickcurl_photo_as_short_uri        (flickcurl_photo *photo);

Get a short URI for a photo

Encoded based on description given in http://www.flickr.com/groups/api/discuss/72157616713786392/

photo :

photo object

Returns :

new short URI string or NULL on failure

flickcurl_photo_as_source_uri ()

char *              flickcurl_photo_as_source_uri       (flickcurl_photo *photo,
                                                         const char c);

Get a photo's image source URIs

c can be s,m,t,b for sizes, o for original, otherwise default https://www.flickr.com/services/api/misc.urls.html

photo :

photo object

c :

size s, m, t or b

Returns :

new source URI string or NULL on failure

flickcurl_photo_as_user_icon_uri ()

char *              flickcurl_photo_as_user_icon_uri    (flickcurl_photo *photo);

Get the user's icon URI

The icon URI returned is always a 48x48 pixel JPEG

photo :

photo object

Returns :

new icon URI string or NULL on failure

flickcurl_photo_id_as_short_uri ()

char *              flickcurl_photo_id_as_short_uri     (char *photo_id);

Get a short URI for a photo ID

Encoded based on description given in http://www.flickr.com/groups/api/discuss/72157616713786392/

photo_id :

photo ID

Returns :

new short URI string or NULL on failure

flickcurl_source_uri_as_photo_id ()

char *              flickcurl_source_uri_as_photo_id    (const char *uri);

Get a photo ID from an image source URI

Turns an URL that points to the photo into a photo ID. i.e. given an URI like these: https://farm{farm-id}.static.flickr.com/{server-id}/{photo-id}_{o-secret}_o.(jpg|gif|png) or https://farm{farm-id}.static.flickr.com/{server-id}/{photo-id}_{secret}_[mstb].jpg https://farm{farm-id}.static.flickr.com/{server-id}/{photo-id}_{secret}.jpg (or the same with staticflickr.com) returns the {photo-id}

uri :

source uri

Returns :

new photo ID string or NULL on failure

flickcurl_photo_field

typedef struct {
  char* string;
  flickcurl_photo_field_type integer;
  flickcurl_field_value_type type;
} flickcurl_photo_field;

Field of a photo structure

char *string;

string field value

flickcurl_photo_field_type integer;

integer field value

flickcurl_field_value_type type;

field type

enum flickcurl_photo_field_type

typedef enum {
  PHOTO_FIELD_none,
  PHOTO_FIELD_dateuploaded,
  PHOTO_FIELD_farm,
  PHOTO_FIELD_isfavorite,
  PHOTO_FIELD_license,
  PHOTO_FIELD_originalformat,
  PHOTO_FIELD_rotation,
  PHOTO_FIELD_server,
  PHOTO_FIELD_dates_lastupdate,
  PHOTO_FIELD_dates_posted,
  PHOTO_FIELD_dates_taken,
  PHOTO_FIELD_dates_takengranularity,
  PHOTO_FIELD_description,
  PHOTO_FIELD_editability_canaddmeta,
  PHOTO_FIELD_editability_cancomment,
  PHOTO_FIELD_geoperms_iscontact,
  PHOTO_FIELD_geoperms_isfamily,
  PHOTO_FIELD_geoperms_isfriend,
  PHOTO_FIELD_geoperms_ispublic,
  PHOTO_FIELD_location_accuracy,
  PHOTO_FIELD_location_latitude,
  PHOTO_FIELD_location_longitude,
  PHOTO_FIELD_owner_location,
  PHOTO_FIELD_owner_nsid,
  PHOTO_FIELD_owner_realname,
  PHOTO_FIELD_owner_username,
  PHOTO_FIELD_title,
  PHOTO_FIELD_visibility_isfamily,
  PHOTO_FIELD_visibility_isfriend,
  PHOTO_FIELD_visibility_ispublic,
  PHOTO_FIELD_secret,
  PHOTO_FIELD_originalsecret,
  PHOTO_FIELD_location_neighbourhood,
  PHOTO_FIELD_location_neighborhood = PHOTO_FIELD_location_neighbourhood,
  PHOTO_FIELD_location_locality,
  PHOTO_FIELD_location_county,
  PHOTO_FIELD_location_region,
  PHOTO_FIELD_location_country,
  PHOTO_FIELD_location_placeid,
  PHOTO_FIELD_neighbourhood_placeid,
  PHOTO_FIELD_neighborhood_placeid = PHOTO_FIELD_neighbourhood_placeid,
  PHOTO_FIELD_locality_placeid,
  PHOTO_FIELD_county_placeid,
  PHOTO_FIELD_region_placeid,
  PHOTO_FIELD_country_placeid,
  PHOTO_FIELD_location_woeid,
  PHOTO_FIELD_neighbourhood_woeid,
  PHOTO_FIELD_neighborhood_woeid  = PHOTO_FIELD_neighbourhood_woeid,
  PHOTO_FIELD_locality_woeid,
  PHOTO_FIELD_county_woeid,
  PHOTO_FIELD_region_woeid,
  PHOTO_FIELD_country_woeid,
  PHOTO_FIELD_usage_candownload,
  PHOTO_FIELD_usage_canblog,
  PHOTO_FIELD_usage_canprint,
  PHOTO_FIELD_owner_iconserver,
  PHOTO_FIELD_owner_iconfarm,
  PHOTO_FIELD_original_width,
  PHOTO_FIELD_original_height,
  PHOTO_FIELD_views,
  PHOTO_FIELD_comments,
  PHOTO_FIELD_favorites,
  PHOTO_FIELD_gallery_comment,
  PHOTO_FIELD_FIRST = PHOTO_FIELD_dateuploaded,
  PHOTO_FIELD_LAST = PHOTO_FIELD_gallery_comment
} flickcurl_photo_field_type;

Fields of a flickcurl_photo*

PHOTO_FIELD_none

internal

PHOTO_FIELD_dateuploaded

date uploaded

PHOTO_FIELD_farm

farm number

PHOTO_FIELD_isfavorite

is favorite boolean

PHOTO_FIELD_license

license

PHOTO_FIELD_originalformat

original format

PHOTO_FIELD_rotation

rotation

PHOTO_FIELD_server

server

PHOTO_FIELD_dates_lastupdate

last update date

PHOTO_FIELD_dates_posted

posted date

PHOTO_FIELD_dates_taken

taken date

PHOTO_FIELD_dates_takengranularity

taken granularity

PHOTO_FIELD_description

description

PHOTO_FIELD_editability_canaddmeta

can add metadata boolean

PHOTO_FIELD_editability_cancomment

can comment boolean

PHOTO_FIELD_geoperms_iscontact

geo perms are for contacts

PHOTO_FIELD_geoperms_isfamily

geo perms are for family

PHOTO_FIELD_geoperms_isfriend

geo perms are for frind

PHOTO_FIELD_geoperms_ispublic

geo perms are for public

PHOTO_FIELD_location_accuracy

location accuracy

PHOTO_FIELD_location_latitude

location latitude

PHOTO_FIELD_location_longitude

location longitude

PHOTO_FIELD_owner_location

owner location

PHOTO_FIELD_owner_nsid

owner NSID

PHOTO_FIELD_owner_realname

owner real name

PHOTO_FIELD_owner_username

owner user name

PHOTO_FIELD_title

title

PHOTO_FIELD_visibility_isfamily

visibility is for family

PHOTO_FIELD_visibility_isfriend

visibility is for friend

PHOTO_FIELD_visibility_ispublic

visibility is for public

PHOTO_FIELD_secret

photo secret

PHOTO_FIELD_originalsecret

photo original secret

PHOTO_FIELD_location_neighbourhood

location neighbourhood

PHOTO_FIELD_location_neighborhood

deprecated

PHOTO_FIELD_location_locality

location locality

PHOTO_FIELD_location_county

location county

PHOTO_FIELD_location_region

location region

PHOTO_FIELD_location_country

location country

PHOTO_FIELD_location_placeid

location place ID

PHOTO_FIELD_neighbourhood_placeid

neighborhood place ID

PHOTO_FIELD_neighborhood_placeid

dprecated

PHOTO_FIELD_locality_placeid

locality place ID

PHOTO_FIELD_county_placeid

county place ID

PHOTO_FIELD_region_placeid

region place ID

PHOTO_FIELD_country_placeid

country place ID

PHOTO_FIELD_location_woeid

location WOE ID

PHOTO_FIELD_neighbourhood_woeid

neighborhood WOE ID

PHOTO_FIELD_neighborhood_woeid

deprecated

PHOTO_FIELD_locality_woeid

locality WOE ID

PHOTO_FIELD_county_woeid

county WOE ID

PHOTO_FIELD_region_woeid

region WOE ID

PHOTO_FIELD_country_woeid

country WOE ID

PHOTO_FIELD_usage_candownload

can download

PHOTO_FIELD_usage_canblog

can blog

PHOTO_FIELD_usage_canprint

can print

PHOTO_FIELD_owner_iconserver

server of owner's icon

PHOTO_FIELD_owner_iconfarm

farm of owner's icon

PHOTO_FIELD_original_width

original photo width

PHOTO_FIELD_original_height

original photo height

PHOTO_FIELD_views

number of photo views

PHOTO_FIELD_comments

number of photo comments

PHOTO_FIELD_favorites

number of photo favorites

PHOTO_FIELD_gallery_comment

comment on the photo when used in a gallery

PHOTO_FIELD_FIRST

internal offset to first in enum list

PHOTO_FIELD_LAST

internal offset to last in enum list

enum flickcurl_field_value_type

typedef enum {
  VALUE_TYPE_NONE, /* empty field */
  VALUE_TYPE_PHOTO_ID, /* internal */
  VALUE_TYPE_PHOTO_URI, /* internal */
  VALUE_TYPE_UNIXTIME,
  VALUE_TYPE_BOOLEAN,
  VALUE_TYPE_DATETIME,
  VALUE_TYPE_FLOAT,
  VALUE_TYPE_INTEGER,
  VALUE_TYPE_STRING,
  VALUE_TYPE_URI,
  VALUE_TYPE_PERSON_ID, /* internal */
  VALUE_TYPE_MEDIA_TYPE, /* internal */
  VALUE_TYPE_TAG_STRING, /* internal */
  VALUE_TYPE_COLLECTION_ID, /* internal */
  VALUE_TYPE_ICON_PHOTOS, /* internal */
  VALUE_TYPE_LAST = VALUE_TYPE_ICON_PHOTOS
} flickcurl_field_value_type;

Field data types

VALUE_TYPE_NONE

internal

VALUE_TYPE_PHOTO_ID

internal

VALUE_TYPE_PHOTO_URI

internal

VALUE_TYPE_UNIXTIME

a unixtime

VALUE_TYPE_BOOLEAN

boolean

VALUE_TYPE_DATETIME

date time

VALUE_TYPE_FLOAT

floating point number

VALUE_TYPE_INTEGER

integer

VALUE_TYPE_STRING

string

VALUE_TYPE_URI

URI

VALUE_TYPE_PERSON_ID

person ID

VALUE_TYPE_MEDIA_TYPE

internal

VALUE_TYPE_TAG_STRING

internal

VALUE_TYPE_COLLECTION_ID

internal

VALUE_TYPE_ICON_PHOTOS

internal

VALUE_TYPE_LAST

internal offset to last in enum list

flickcurl_photos_addTags ()

int                 flickcurl_photos_addTags            (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *tags);

Add tags to a photo.

Implements flickr.photos.addTags (0.9)

fc :

flickcurl context

photo_id :

photo ID

tags :

tags to add as a space-separated list

Returns :

non-0 on failure

flickcurl_photos_comments_addComment ()

char *              flickcurl_photos_comments_addComment
                                                        (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *comment_text);

Add comment to a photo as the currently authenticated user.

Implements flickr.photos.comments.addComment (0.10)

fc :

flickcurl context

photo_id :

The id of the photo to add a comment to.

comment_text :

Text of the comment

Returns :

new comment ID or non-NULL on failure

flickcurl_photos_comments_deleteComment ()

int                 flickcurl_photos_comments_deleteComment
                                                        (flickcurl *fc,
                                                         const char *comment_id);

Delete a comment as the currently authenticated user.

Implements flickr.photos.comments.deleteComment (0.10)

fc :

flickcurl context

comment_id :

The id of the comment to edit.

Returns :

non-0 on failure

flickcurl_photos_comments_editComment ()

int                 flickcurl_photos_comments_editComment
                                                        (flickcurl *fc,
                                                         const char *comment_id,
                                                         const char *comment_text);

Edit the text of a comment as the currently authenticated user.

Implements flickr.photos.comments.editComment (0.10)

fc :

flickcurl context

comment_id :

The id of the comment to edit.

comment_text :

Update the comment to this text.

Returns :

non-0 on failure

flickcurl_photos_comments_getList ()

flickcurl_comment ** flickcurl_photos_comments_getList  (flickcurl *fc,
                                                         const char *photo_id);

Returns the comments for a photo

Implements flickr.photos.comments.getList (0.10)

fc :

flickcurl context

photo_id :

The id of the photo to fetch comments for.

Returns :

array of comments or NULL on failure

flickcurl_photos_comments_getRecentForContacts_params ()

flickcurl_photos_list * flickcurl_photos_comments_getRecentForContacts_params
                                                        (flickcurl *fc,
                                                         int date_lastcomment,
                                                         const char *contacts_filter,
                                                         flickcurl_photos_list_params *list_params);

Return the list of photos belonging to your contacts that have been commented on recently.

Implements flickr.photos.comments.getRecentForContacts (1.12)

fc :

flickcurl context

date_lastcomment :

Limits the resultset to photos that have been commented on since this date. The date should be in the form of a Unix timestamp. The default, and maximum, offset is (1) hour (or <0)

contacts_filter :

A comma-separated list of contact NSIDs to limit the scope of the query to (or NULL)

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

list of photos or NULL on failure

flickcurl_photos_delete ()

int                 flickcurl_photos_delete             (flickcurl *fc,
                                                         const char *photo_id);

Delete a photo.

Implements flickr.photos.delete (0.9)

fc :

flickcurl context

photo_id :

photo ID

Returns :

non-0 on failure

flickcurl_photos_geo_batchCorrectLocation ()

int                 flickcurl_photos_geo_batchCorrectLocation
                                                        (flickcurl *fc,
                                                         flickcurl_location *location,
                                                         const char *place_id,
                                                         int woe_id);

Correct the places hierarchy for all the photos for a user at a given location (latitude, longitude and accuracy).

You must pass either a valid Places ID in place_id or a WOE ID in woe_id.

Batch corrections are processed in a delayed queue so it may take a few minutes before the changes are reflected in a user's photos.

Implements flickr.photos.geo.batchCorrectLocation (1.8)

fc :

flickcurl context

location :

The location (lat, long, accuracy) of the photos to update.

place_id :

A Flickr Places ID (or NULL)

woe_id :

A Where On Earth (WOE) ID (or 0)

Returns :

non-0 on failure

flickcurl_photos_geo_correctLocation ()

int                 flickcurl_photos_geo_correctLocation
                                                        (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *place_id,
                                                         int woe_id);

Correct a photo location.

You must pass either a valid Places ID in place_id or a WOE ID in woe_id.

Implements flickr.photos.geo.correctLocation (1.8)

fc :

flickcurl context

photo_id :

The ID of the photo whose WOE location is being corrected.

place_id :

A Flickr Places ID (or NULL)

woe_id :

A Where On Earth (WOE) ID (or NULL)

Returns :

non-0 on failure

flickcurl_photos_geo_getLocation ()

flickcurl_location * flickcurl_photos_geo_getLocation   (flickcurl *fc,
                                                         const char *photo_id);

Get the geo data (latitude and longitude and the accuracy level) for a photo.

Implements flickr.photos.geo.getLocation (0.12)

fc :

flickcurl context

photo_id :

The id of the photo you want to retrieve location data for.

Returns :

non-0 on failure

flickcurl_photos_geo_getPerms ()

flickcurl_perms *   flickcurl_photos_geo_getPerms       (flickcurl *fc,
                                                         const char *photo_id);

Get permissions for who may view geo data for a photo.

Implements flickr.photos.geo.getPerms (0.12)

fc :

flickcurl context

photo_id :

The id of the photo to get permissions for.

Returns :

non-0 on failure

flickcurl_photos_geo_photosForLocation ()

flickcurl_photo **  flickcurl_photos_geo_photosForLocation
                                                        (flickcurl *fc,
                                                         flickcurl_location *location,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Get a list of photos for a user at a specific location (latitude, longitude and accuracy)

Implements flickr.photos.geo.photosForLocation (1.8)

fc :

flickcurl context

location :

The location (lat, long, accuracy) of the photos

extras :

A comma-delimited list of extra information to fetch for each returned record. Currently supported fields are: license, date_upload, date_taken, owner_name, icon_server, original_format, last_update, geo, tags, machine_tags, o_dims, views, media (or NULL)

per_page :

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

page :

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

Returns :

list of photos or NULL on failure

flickcurl_photos_geo_photosForLocation_params ()

flickcurl_photos_list * flickcurl_photos_geo_photosForLocation_params
                                                        (flickcurl *fc,
                                                         flickcurl_location *location,
                                                         flickcurl_photos_list_params *list_params);

Get a list of photos for a user at a specific location (latitude, longitude and accuracy)

fc :

flickcurl context

location :

The location (lat, long, accuracy) of the photos

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

list of photos or NULL on failure

flickcurl_photos_geo_removeLocation ()

int                 flickcurl_photos_geo_removeLocation (flickcurl *fc,
                                                         const char *photo_id);

Removes the geo data associated with a photo.

Implements flickr.photos.geo.removeLocation (0.12)

fc :

flickcurl context

photo_id :

The id of the photo you want to remove location data from.

Returns :

non-0 on failure

flickcurl_photos_geo_setContext ()

int                 flickcurl_photos_geo_setContext     (flickcurl *fc,
                                                         const char *photo_id,
                                                         int context);

Indicate the state of a photo's geotagginess beyond latitude and longitude.

Note : photos passed to this method must already be geotagged using the flickcurl_photos_geo_setLocation() method.

Implements flickr.photos.geo.setContext (1.8)

fc :

flickcurl context

photo_id :

The id of the photo to set context data for.

context :

Context is a numeric value representing the photo's geotagginess beyond latitude and longitude. The current values are: 0: not defined, 1: indoors, 2: outdoors.

Returns :

non-0 on failure

flickcurl_photos_geo_setLocation ()

int                 flickcurl_photos_geo_setLocation    (flickcurl *fc,
                                                         const char *photo_id,
                                                         flickcurl_location *location);

Sets the geo data (latitude and longitude and, optionally, the accuracy level) for a photo.

Implements flickr.photos.geo.setLocation (0.12)

fc :

flickcurl context

photo_id :

The id of the photo to set location data for.

location :

The location

Returns :

non-0 on failure

flickcurl_photos_geo_setPerms ()

int                 flickcurl_photos_geo_setPerms       (flickcurl *fc,
                                                         const char *photo_id,
                                                         flickcurl_perms *perms);

Set the permission for who may view the geo data associated with a photo.

Implements flickr.photos.geo.setPerms (0.12)

fc :

flickcurl context

photo_id :

The id of the photo to get permissions for.

perms :

Geo permissions

Returns :

non-0 on failure

flickcurl_photos_getAllContexts ()

flickcurl_context ** flickcurl_photos_getAllContexts    (flickcurl *fc,
                                                         const char *photo_id);

Get all visible sets and pools the photo belongs to.

Implements flickr.photos.getAllContexts (0.7)

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

fc :

flickcurl context

photo_id :

photo ID

Returns :

prev, next contexts or NULL

flickcurl_photos_getContactsPhotos ()

flickcurl_photo **  flickcurl_photos_getContactsPhotos  (flickcurl *fc,
                                                         int contact_count,
                                                         int just_friends,
                                                         int single_photo,
                                                         int include_self,
                                                         const char *extras);

Fetch a list of recent photos from the calling users' contacts.

See flickcurl_photos_getContactsPhotos() for details of parameters.

Implements flickr.photos.getContactsPhotos (0.11)

fc :

flickcurl context

contact_count :

Number of photos to return (Default 10, maximum 50)

just_friends :

Set to non-0 to only show photos from friends and family (excluding regular contacts).

single_photo :

Set to non-0 to only fetch one photo (the latest) per contact, instead of all photos in chronological order.

include_self :

Set to non-0 to include photos from the calling user.

extras :

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

Returns :

non-0 on failure

flickcurl_photos_getContactsPhotos_params ()

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);

Fetch a list of recent photos from the calling users' contacts.

Currently supported extras fields are: license, date_upload, date_taken, owner_name, icon_server, original_format, last_update

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

fc :

flickcurl context

contact_count :

Number of photos to return (Default 10, maximum 50)

just_friends :

Set to non-0 to only show photos from friends and family (excluding regular contacts).

single_photo :

Set to non-0 to only fetch one photo (the latest) per contact, instead of all photos in chronological order.

include_self :

Set to non-0 to include photos from the calling user.

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

non-0 on failure

flickcurl_photos_getContactsPublicPhotos ()

flickcurl_photo **  flickcurl_photos_getContactsPublicPhotos
                                                        (flickcurl *fc,
                                                         const char *user_id,
                                                         int photo_count,
                                                         int just_friends,
                                                         int single_photo,
                                                         int include_self,
                                                         const char *extras);

Fetch a list of recent public photos from a users' contacts.

See flickcurl_photos_getContactsPublicPhotos() for details of parameters.

Implements flickr.photos.getContactsPublicPhotos (0.12)

fc :

flickcurl context

user_id :

The NSID of the user to fetch photos for.

photo_count :

Number of photos to return (Default 10, maximum 50)

just_friends :

Set to non-0 to only show photos from friends and family (excluding regular contacts)

single_photo :

Set to non-0 to only fetch one photo (the latest) per contact, instead of all photos in chronological order.

include_self :

Set to non-0 to include photos from the user specified by user_id.

extras :

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

Returns :

a list of photos or NULL on failure

flickcurl_photos_getContactsPublicPhotos_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);

Fetch a list of recent public photos from a users' contacts.

Currently supported extras fields are: license, date_upload, date_taken, owner_name, icon_server, original_format, last_update.

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

fc :

flickcurl context

user_id :

The NSID of the user to fetch photos for.

photo_count :

Number of photos to return (Default 10, maximum 50)

just_friends :

Set to non-0 to only show photos from friends and family (excluding regular contacts)

single_photo :

Set to non-0 to only fetch one photo (the latest) per contact, instead of all photos in chronological order.

include_self :

Set to non-0 to include photos from the user specified by user_id.

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

a list of photos or NULL on failure

flickcurl_photos_getContext ()

flickcurl_context ** flickcurl_photos_getContext        (flickcurl *fc,
                                                         const char *photo_id);

Get next and previous photos for a photo in a photostream.

Implements flickr.photos.getContext (0.7)

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

fc :

flickcurl context

photo_id :

photo ID

Returns :

prev, next contexts or NULL

flickcurl_photos_getCounts ()

int **              flickcurl_photos_getCounts          (flickcurl *fc,
                                                         const char **dates_array,
                                                         const char **taken_dates_array);

Gets a list of photo counts for the given date ranges for the calling user.

Implements flickr.photos.getCounts (0.13)

The return array fields are: [0] count [1] fromdate as unixtime [2] todate as unixtime

fc :

flickcurl context

dates_array :

A comma delimited list of unix timestamps, denoting the periods to return counts for. They should be specified smallest first. (or NULL)

taken_dates_array :

A comma delimited list of mysql datetimes, denoting the periods to return counts for. They should be specified mallest first. (or NULL)

Returns :

array of int[3] or NULL on failure

flickcurl_photos_getExif ()

flickcurl_exif **   flickcurl_photos_getExif            (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *secret);

Retrieves a list of EXIF/TIFF/GPS tags for a given photo.

Implements flickr.photos.getExif (0.12)

fc :

flickcurl context

photo_id :

The id of the photo to fetch information for.

secret :

The secret for the photo (or NULL) If the correct secret is passed then permissions checking is skipped. This enables the 'sharing' of individual photos by passing around the id and secret.

Returns :

non-0 on failure

flickcurl_photos_getFavorites ()

flickcurl_person ** flickcurl_photos_getFavorites       (flickcurl *fc,
                                                         const char *photo_id,
                                                         int page,
                                                         int per_page);

Returns the list of people who have favorited a given photo.

Implements flickr.photos.getFavorites (0.12)

fc :

flickcurl context

photo_id :

The ID of the photo to fetch the favoriters list for.

page :

The page of results to return (default 1)

per_page :

Number of users to return per page (default 10, max 50)

Returns :

non-0 on failure

flickcurl_photos_getInfo ()

flickcurl_photo *   flickcurl_photos_getInfo            (flickcurl *fc,
                                                         const char *photo_id);

Get information about a photo

Deprecated for flickcurl_photos_getInfo2() that allows passing the optional secret.

fc :

flickcurl context

photo_id :

photo ID

Returns :

flickcurl_photo or NULL on failure

flickcurl_photos_getInfo2 ()

flickcurl_photo *   flickcurl_photos_getInfo2           (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *secret);

Get information about a photo

Implements flickr.photos.getInfo (0.5)

fc :

flickcurl context

photo_id :

photo ID

secret :

secret (or NULL)

Returns :

flickcurl_photo or NULL on failure

flickcurl_photos_getNotInSet ()

flickcurl_photo **  flickcurl_photos_getNotInSet        (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Returns a list of your photos that are not part of any sets.

See flickcurl_photos_getNotInSet_params() for details of parameters.

Implements flickr.photos.getNotInSet (0.12)

fc :

flickcurl context

min_upload_date :

Minimum upload date.

max_upload_date :

Maximum upload date.

min_taken_date :

Minimum taken date (or NULL).

max_taken_date :

Maximum taken date (or NULL).

privacy_filter :

Return photos only matching a certain privacy level. Valid privacy values are: 1 public, 2 friends, 3 family, 4 friends and family, 5 private

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 :

a list of photos or NULL on failure

flickcurl_photos_getNotInSet_params ()

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);

Returns a list of your photos that are not part of any sets.

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

fc :

flickcurl context

min_upload_date :

Minimum upload date.

max_upload_date :

Maximum upload date.

min_taken_date :

Minimum taken date (or NULL).

max_taken_date :

Maximum taken date (or NULL).

privacy_filter :

Return photos only matching a certain privacy level.

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

a list of photos or NULL on failure

flickcurl_photos_getPerms ()

flickcurl_perms *   flickcurl_photos_getPerms           (flickcurl *fc,
                                                         const char *photo_id);

Get permissions for a photo.

Implements flickr.photos.getPerms (0.11)

fc :

flickcurl context

photo_id :

The id of the photo to get permissions for.

Returns :

permissions or NULL on failure

flickcurl_photos_getRecent ()

flickcurl_photo **  flickcurl_photos_getRecent          (flickcurl *fc,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Returns a list of the latest public photos uploaded to flickr.

See flickcurl_photos_getRecent_params() for details of parameters.

Implements flickr.photos.getRecent (0.12)

fc :

flickcurl context

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_photos_getRecent_params ()

flickcurl_photos_list * flickcurl_photos_getRecent_params
                                                        (flickcurl *fc,
                                                         flickcurl_photos_list_params *list_params);

Returns a list of the latest public photos uploaded to flickr.

Currently supported extras 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.

fc :

flickcurl context

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

non-0 on failure

flickcurl_photos_getSizes ()

flickcurl_size **   flickcurl_photos_getSizes           (flickcurl *fc,
                                                         const char *photo_id);

Returns the available sizes for a photo. The calling user must have permission to view the photo.

Implements flickr.photos.getSizes (0.13)

fc :

flickcurl context

photo_id :

The id of the photo to fetch size information for.

Returns :

non-0 on failure

flickcurl_photos_getUntagged ()

flickcurl_photo **  flickcurl_photos_getUntagged        (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Returns a list of your photos with no tags.

See flickcurl_photos_getUntagged_params() for details of parameters.

Implements flickr.photos.getUntagged (0.12)

fc :

flickcurl context

min_upload_date :

Minimum upload date.

max_upload_date :

Maximum upload date.

min_taken_date :

Minimum taken date (or NULL)

max_taken_date :

Maximum taken date (or NULL)

privacy_filter :

Return photos only matching a certain privacy level. Valid privacy values are: 1 public, 2 friends, 3 family, 4 friends and family, 5 private

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 :

a list of photos or NULL on failure

flickcurl_photos_getUntagged_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);

Returns a list of your photos with no tags.

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

fc :

flickcurl context

min_upload_date :

Minimum upload date.

max_upload_date :

Maximum upload date.

min_taken_date :

Minimum taken date (or NULL)

max_taken_date :

Maximum taken date (or NULL)

privacy_filter :

Return photos only matching a certain privacy level. Valid privacy values are: 1 public, 2 friends, 3 family, 4 friends and family, 5 private

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

a list of photos or NULL on failure

flickcurl_photos_getWithGeoData ()

flickcurl_photo **  flickcurl_photos_getWithGeoData     (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Returns a list of your geo-tagged photos.

See flickcurl_photos_getWithGeoData_params() for details of parameters.

Implements flickr.photos.getWithGeoData (0.12)

fc :

flickcurl context

min_upload_date :

Minimum upload date. Photos with an upload date greater than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

max_upload_date :

Maximum upload date. Photos with an upload date less than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

min_taken_date :

Minimum taken date. Photos with an taken date greater than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

max_taken_date :

Maximum taken date. Photos with an taken date less than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

privacy_filter :

Return photos only matching a certain privacy level. Valid values are: 1 public photos; 2 private photos visible to friends; 3 private photos visible to family; 4 private photos visible to friends and family; 5 completely private photos. (or NULL)

extras :

A comma-delimited list of extra information to fetch for each returned record.

per_page :

Number of photos to return per page.

page :

The page of results to return.

Returns :

non-0 on failure

flickcurl_photos_getWithGeoData_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);

Returns a list of your geo-tagged photos.

fc :

flickcurl context

min_upload_date :

Minimum upload date. Photos with an upload date greater than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

max_upload_date :

Maximum upload date. Photos with an upload date less than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

min_taken_date :

Minimum taken date. Photos with an taken date greater than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

max_taken_date :

Maximum taken date. Photos with an taken date less than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

privacy_filter :

Return photos only matching a certain privacy level. Valid values are: 1 public photos; 2 private photos visible to friends; 3 private photos visible to family; 4 private photos visible to friends and family; 5 completely private photos. (or NULL)

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

non-0 on failure

flickcurl_photos_getWithoutGeoData ()

flickcurl_photo **  flickcurl_photos_getWithoutGeoData  (flickcurl *fc,
                                                         int min_upload_date,
                                                         int max_upload_date,
                                                         const char *min_taken_date,
                                                         const char *max_taken_date,
                                                         int privacy_filter,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Returns a list of your photos which haven't been geo-tagged.

See flickcurl_photos_getWithoutGeoData_params() for details of parameters.

Implements flickr.photos.getWithoutGeoData (0.12)

fc :

flickcurl context

min_upload_date :

Minimum upload date. Photos with an upload date greater than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

max_upload_date :

Maximum upload date. Photos with an upload date less than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

min_taken_date :

Minimum taken date. Photos with an taken date greater than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

max_taken_date :

Maximum taken date. Photos with an taken date less than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

privacy_filter :

Return photos only matching a certain privacy level. Valid values are: 1 public photos; 2 private photos visible to friends; 3 private photos visible to family; 4 private photos visible to friends and family; 5 completely private photos. (or NULL)

extras :

A comma-delimited list of extra information to fetch for each returned record.

per_page :

Number of photos to return per page.

page :

The page of results to return.

Returns :

non-0 on failure

flickcurl_photos_getWithoutGeoData_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);

Returns a list of your photos which haven't been geo-tagged.

fc :

flickcurl context

min_upload_date :

Minimum upload date. Photos with an upload date greater than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

max_upload_date :

Maximum upload date. Photos with an upload date less than or equal to this value will be returned. The date should be in the form of a unix timestamp. (or NULL)

min_taken_date :

Minimum taken date. Photos with an taken date greater than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

max_taken_date :

Maximum taken date. Photos with an taken date less than or equal to this value will be returned. The date should be in the form of a mysql datetime. (or NULL)

privacy_filter :

Return photos only matching a certain privacy level. Valid values are: 1 public photos; 2 private photos visible to friends; 3 private photos visible to family; 4 private photos visible to friends and family; 5 completely private photos. (or NULL)

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

non-0 on failure

flickcurl_photos_licenses_getInfo ()

flickcurl_license ** flickcurl_photos_licenses_getInfo  (flickcurl *fc);

Get a list of available photo licenses for Flickr.

Implements flickr.photos.licenses.getInfo (0.6)

fc :

flickcurl context

Returns :

an array of flickcurl_license or NULL on failure

flickcurl_photos_licenses_getInfo_by_id ()

flickcurl_license * flickcurl_photos_licenses_getInfo_by_id
                                                        (flickcurl *fc,
                                                         int id);

Get an individual photo license by ID

Not part of the Flickr API.

fc :

flickcurl context

id :

license ID

Returns :

a flickcurl_license or NULL on failure

flickcurl_photos_licenses_setLicense ()

int                 flickcurl_photos_licenses_setLicense
                                                        (flickcurl *fc,
                                                         const char *photo_id,
                                                         int license_id);

Sets the license for a photo.

Implements flickr.photos.licenses.setLicense (0.12)

fc :

flickcurl context

photo_id :

The photo to update the license for.

license_id :

The license to apply, or 0 (zero) to remove the current license.

Returns :

non-0 on failure

flickcurl_photos_notes_add ()

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);

Add a note to a photo.

Coordinates and sizes are in pixels, based on the 500px image size shown on individual photo pages.

Implements flickr.photos.notes.add (0.12)

fc :

flickcurl context

photo_id :

The id of the photo to add a note to

note_x :

The left coordinate of the note

note_y :

The top coordinate of the note

note_w :

The width of the note

note_h :

The height of the note

note_text :

The description of the note

Returns :

note ID or NULL on failure

flickcurl_photos_notes_delete ()

int                 flickcurl_photos_notes_delete       (flickcurl *fc,
                                                         const char *note_id);

Delete a note from a photo.

Implements flickr.photos.notes.delete (0.12)

fc :

flickcurl context

note_id :

The id of the note to delete

Returns :

non-0 on failure

flickcurl_photos_notes_edit ()

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);

Edit a note on a photo. Coordinates and sizes are in pixels, based on the 500px image size shown on individual photo pages.

Implements flickr.photos.notes.edit (0.12)

fc :

flickcurl context

note_id :

The id of the note to edit

note_x :

The left coordinate of the note

note_y :

The top coordinate of the note

note_w :

The width of the note

note_h :

The height of the note

note_text :

The description of the note

Returns :

non-0 on failure

flickcurl_photos_recentlyUpdated ()

flickcurl_photo **  flickcurl_photos_recentlyUpdated    (flickcurl *fc,
                                                         int min_date,
                                                         const char *extras,
                                                         int per_page,
                                                         int page);

Return a list of your photos that have been recently created or which have been recently modified

See flickcurl_photos_recentlyUpdated() for details of parameters.

Implements flickr.photos.recentlyUpdated (0.12)

fc :

flickcurl context

min_date :

A Unix timestamp indicating the date from which modifications should be compared.

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_photos_recentlyUpdated_params ()

flickcurl_photos_list * flickcurl_photos_recentlyUpdated_params
                                                        (flickcurl *fc,
                                                         int min_date,
                                                         flickcurl_photos_list_params *list_params);

Return a list of your photos that have been recently created or which have been recently modified

Recently modified may mean that the photo's metadata (title, description, tags) may have been changed or a comment has been added (or just modified somehow :-)

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.

fc :

flickcurl context

min_date :

A Unix timestamp indicating the date from which modifications should be compared.

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

non-0 on failure

flickcurl_photos_removeTag ()

int                 flickcurl_photos_removeTag          (flickcurl *fc,
                                                         const char *tag_id);

Remove a tag from a photo.

The tag_id is returned such as from flickcurl_photos_getInfo()

Implements flickr.photos.removeTag (0.9)

fc :

flickcurl context

tag_id :

tag ID to remove from the photo

Returns :

non-0 on failure

flickcurl_photos_replace ()

flickcurl_upload_status * flickcurl_photos_replace      (flickcurl *fc,
                                                         const char *photo_file,
                                                         const char *photo_id,
                                                         int async);

Replace a photo with a new file.

Implements Replacing Photos (0.10) Implements Asynchronous Uploading (0.10)

fc :

flickcurl context

photo_file :

photo filename

photo_id :

photo ID to replace

async :

upload asynchronously boolean (non-0 true)

Returns :

flickcurl_upload_status or NULL on failure

flickcurl_photos_search ()

flickcurl_photo **  flickcurl_photos_search             (flickcurl *fc,
                                                         flickcurl_search_params *params);

Return a list of photos matching some criteria.

Only photos visible to the calling user will be returned. To return private or semi-private photos, the caller must be authenticated with 'read' permissions, and have permission to view the photos. Unauthenticated calls will only return public photos.

Implements flickr.photos.search (0.11)

Flickcurl 1.0: Added place_id for places API as announced 2008-01-11 http://tech.groups.yahoo.com/group/yws-flickr/message/3688

See flickcurl_photos_search_params() for details on the the search parameters.

Ensure the params object is propertly initialized to zeros/NULLs or use flickcurl_search_params_init() to initialize this.

fc :

flickcurl context

params :

flickcurl_search_params search parameters

Returns :

an array of flickcurl_photo pointers (may be length 0) or NULL on failure

flickcurl_photos_search_params ()

flickcurl_photos_list * flickcurl_photos_search_params  (flickcurl *fc,
                                                         flickcurl_search_params *params,
                                                         flickcurl_photos_list_params *list_params);

Return a photos list or raw content matching some criteria.

Only photos visible to the calling user will be returned. To return private or semi-private photos, the caller must be authenticated with 'read' permissions, and have permission to view the photos. Unauthenticated calls will only return public photos.

Ensure the params object is propertly initialized to zeros/NULLs or use flickcurl_search_params_init() to initialize this.

Flickcurl 1.15; Added in_gallery search parameter as announced 2010-04-08 http://code.flickr.com/blog/2010/04/08/galleries-apis/

Flickcurl 1.14: Added geo_context and is_commons search parameters to flickcurl_search_params. Added more extras to docs.

Flickcurl 1.6: Added list_params beyond flickcurl_photos_search() to allow returning raw content if list_params is present and field format is not NULL as announced 2008-08-25 http://code.flickr.com/blog/2008/08/25/api-responses-as-feeds/

NOTE: The params fields: extras, per_page and page are ignored - the values are taken from the list_params fields.

Flickcurl 1.0: Added place_id for places API as announced 2008-01-11 http://tech.groups.yahoo.com/group/yws-flickr/message/3688

Optional parameter "media" that defaults to "all" but can also be set to "photos" or "videos" to filter results by media type. API addition 2008-04-07.

Optional parameter "has_geo" for any photo that has been geotagged. As announced 2008-06-27 http://tech.groups.yahoo.com/group/yws-flickr/message/4146

Optional parameters "lat", "lon", "radius" and "radius_units" added for doing radial geo queries from point (lat, lon) within radius/radius_units. radius_units default is "km". As announced 2008-06-27 http://tech.groups.yahoo.com/group/yws-flickr/message/4146

(Experimental) Optional parameter "contacts" requires requires that the "user_id" field also is set. Valid values are "all" or "ff" for just friends and family. As announced 2008-06-30 http://tech.groups.yahoo.com/group/yws-flickr/message/4162

fc :

flickcurl context

params :

flickcurl_search_params search parameters

list_params :

flickcurl_photos_list_params result parameters (or NULL)

Returns :

a photos list or NULL

flickcurl_search_params

typedef struct {
  char* user_id;
  char* tags;
  char* tag_mode;
  char* text;
  int min_upload_date;
  int max_upload_date;
  char* min_taken_date;
  char* max_taken_date;
  char* license;
  char* sort;
  char* privacy_filter;
  char* bbox;
  int accuracy;
  int safe_search;
  int content_type;
  char* machine_tags;
  char* machine_tag_mode;
  char* group_id;
  char* extras;
  int per_page;
  int page;
  char* place_id;
  char* media;
  int has_geo;
  double lat;
  double lon;
  double radius;
  char* radius_units;
  char* contacts;
  int woe_id;
  int geo_context;
  int is_commons;
  int in_gallery;
} flickcurl_search_params;

Search parameters for flickcurl_photos_search()

char *user_id;

The NSID of the user who's photo to search (or "me" or NULL).

char *tags;

A comma-delimited list of tags (or NULL)

char *tag_mode;

Either 'any' for an OR combination of tags, or 'all' for an AND combination. Defaults to 'any' if not specified (or NULL)

char *text;

Free text search (or NULL)

int min_upload_date;

Minimum upload date as a unix timestamp (or 0)

int max_upload_date;

Maximum upload date as a unix timestamp (or 0)

char *min_taken_date;

Minimum taken date in the form of a mysql datetime (or NULL)

char *max_taken_date;

Maximum taken date in the form of a mysql datetime (or NULL)

char *license;

Comma-separated list of photo licenses (or NULL)

char *sort;

The order in which to sort returned photos. Defaults to date-posted-desc. The possible values are: date-posted-asc, date-posted-desc, date-taken-asc, date-taken-desc, interestingness-desc, interestingness-asc, and relevance (or NULL)

char *privacy_filter;

Return photos only matching a certain privacy level.

char *bbox;

A comma-delimited list of 4 values defining the Bounding Box of the area that will be searched.

int accuracy;

Recorded accuracy level of the location information. Current range is 1-16

int safe_search;

Safe search setting: 1 safe, 2 moderate, 3 restricted (or 0).

int content_type;

Content Type setting: 1 for photos only, 2 for screenshots only, 3 for 'other' only, 4 for all types. (or 0)

char *machine_tags;

Machine tag search syntax

char *machine_tag_mode;

Either 'any' for an OR combination of tags, or 'all' for an AND combination. Defaults to 'any' if not specified.

char *group_id;

The id of a group who's pool to search. If specified, only matching photos posted to the group's pool will be returned. (or NULL)

char *extras;

A comma-delimited list of extra information to fetch for each returned record. Currently supported fields are: license, date_upload, date_taken, owner_name, icon_server, original_format, last_update, geo, tags, machine_tags, o_dims, views, media, path_alias, url_sq, url_t, url_s, url_m, url_o. (or NULL)

int per_page;

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

int page;

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

char *place_id;

A Flickr place id. (only used if bbox argument isn't present). Experimental. Geo queries require some sort of limiting agent in order to prevent the database from crying. This is basically like the check against "parameterless searches" for queries without a geo component. A tag, for instance, is considered a limiting agent as are user defined min_date_taken and min_date_upload parameters - If no limiting factor is passed we return only photos added in the last 12 hours (though we may extend the limit in the future) (or NULL)

char *media;

"photos" or "videos" (or NULL)

int has_geo;

non-0 if a photo has been geotagged (or 0)

double lat;

A valid latitude, in decimal format, for doing radial geo queries (or ignored if radius is 0.0)

double lon;

A valid longitude, in decimal format, for doing radial geo queries (or ignored if radius is 0.0)

double radius;

A valid radius used for geo queries, greater than zero and less than 20 miles (or 32 kilometers), for use with point-based geo queries. The default value is 5 (km) (or 0.0 for not used)

char *radius_units;

The unit of measure when doing radial geo queries. Valid options are "mi" (miles) and "km" (kilometers). The default is "km" (or NULL)

char *contacts;

(Experimental) Requires user_id field be set and limits queries to photos beloing to that user's photos. Valid arguments are 'all' or 'ff' for just friends and family.

int woe_id;

A 32-bit identifier that uniquely represents spatial entities. (not used if bbox argument is present). Same restrictions as place_id (or 0)

int geo_context;

A numeric value representing the photo's geotagginess beyond latitude and longitude. The current list of context IDs is 0: not defined, 1: indoors and 2: outdoors. Geo queries require some sort of limiting agent in order to prevent the database from crying (or 0)

int is_commons;

Limit the scope of the search to only photos that are part of the Flickr Commons project. Default is false (or 0)

int in_gallery;

Limit the scope of the search to only photos that are in a gallery. Default is false, search all photos.

flickcurl_search_params_init ()

int                 flickcurl_search_params_init        (flickcurl_search_params *params);

Initialise an existing search parameters structure

params :

search params to init

Returns :

non-0 on failure

flickcurl_photos_setContentType ()

int                 flickcurl_photos_setContentType     (flickcurl *fc,
                                                         const char *photo_id,
                                                         int content_type);

Set the content type of a photo.

Implements flickr.photos.setContentType (0.11)

fc :

flickcurl context

photo_id :

The id of the photo to set the adultness of.

content_type :

The content type of the photo: 1 for Photo, 2 for Screenshot, and 3 for Other.

Returns :

non-0 on failure

flickcurl_photos_setDates ()

int                 flickcurl_photos_setDates           (flickcurl *fc,
                                                         const char *photo_id,
                                                         int date_posted,
                                                         int date_taken,
                                                         int date_taken_granularity);

Set one or both of the dates for a photo.

Implements flickr.photos.setDates (0.11)

fc :

flickcurl context

photo_id :

The id of the photo to edit dates for.

date_posted :

The date the photo was uploaded to flickr as a unix time (or -1)

date_taken :

The date the photo was taken as a unix time (or -1)

date_taken_granularity :

The granularity of the date the photo was taken: 0 second, 4 month, 6 year (or -1)

Returns :

non-0 on failure

flickcurl_photos_setMeta ()

int                 flickcurl_photos_setMeta            (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *title,
                                                         const char *description);

Set the meta information for a photo.

Implements flickr.photos.setMeta (0.11)

fc :

flickcurl context

photo_id :

The id of the photo to set information for.

title :

The title for the photo.

description :

The description for the photo.

Returns :

non-0 on failure

flickcurl_photos_setPerms ()

int                 flickcurl_photos_setPerms           (flickcurl *fc,
                                                         const char *photo_id,
                                                         flickcurl_perms *perms);

Set permissions for a photo.

Implements flickr.photos.setPerms (0.11)

fc :

flickcurl context

photo_id :

The id of the photo to set permissions for.

perms :

The flickcurl_perms photo permissions

Returns :

non-0 on failure

flickcurl_photos_setSafetyLevel ()

int                 flickcurl_photos_setSafetyLevel     (flickcurl *fc,
                                                         const char *photo_id,
                                                         int safety_level,
                                                         int hidden);

Set the safety level of a photo.

Implements flickr.photos.setSafetyLevel (0.11)

fc :

flickcurl context

photo_id :

The id of the photo to set the adultness of.

safety_level :

The safety level of the photo. 1 for Safe, 2 for Moderate, and 3 for Restricted (or <0 for no change)

hidden :

>0 to hide the photo from public searches. 0 to not. <0 for no change.

Returns :

non-0 on failure

flickcurl_photos_setTags ()

int                 flickcurl_photos_setTags            (flickcurl *fc,
                                                         const char *photo_id,
                                                         const char *tags);

Set the tags for a photo.

Note that this replaces all existing tags with the tags here.

Implements flickr.photos.setTags (0.9)

fc :

flickcurl context

photo_id :

photo ID

tags :

all tags for the photo as a space-separated list

Returns :

non-0 on failure

flickcurl_photos_transform_rotate ()

int                 flickcurl_photos_transform_rotate   (flickcurl *fc,
                                                         const char *photo_id,
                                                         int degrees);

Rotate a photo.

Implements flickr.photos.transform.rotate (0.13)

fc :

flickcurl context

photo_id :

The id of the photo to rotate.

degrees :

The amount of degrees by which to rotate the photo (clockwise) from it's current orientation. Valid values are 90, 180 and 270.

Returns :

non-0 on failure

flickcurl_photos_upload_checkTickets ()

flickcurl_ticket ** flickcurl_photos_upload_checkTickets
                                                        (flickcurl *fc,
                                                         const char **tickets_ids);

Checks the status of one or more asynchronous photo upload tickets.

Implements flickr.photos.upload.checkTickets (0.13)

fc :

flickcurl context

tickets_ids :

Array of ticket ids

Returns :

non-0 on failure

flickcurl_photos_upload_params ()

flickcurl_upload_status * flickcurl_photos_upload_params
                                                        (flickcurl *fc,
                                                         flickcurl_upload_params *params);

Uploads a photo with safety level and content type

fc :

flickcurl context

params :

upload parameters

Returns :

flickcurl_upload_status or NULL on failure