Pikchur API /wave @Developers
An API even your mama can understand.
Welcome Developers! We have created a simple API for you to interact with our services. If you find any bugs please feel free to email us at api[at]pikchur.com.

Once you have an application ready we would be more than glad to list you under our Pikchur Applications just drop us a line with a subject "New App".

Happy Coding... :D
Click here to read our documentation.
Authentication
Auth URL XML (Default): https://api.pikchur.com/api/auth/

Auth URL JSON : https://api.pikchur.com/api/auth/json

Return Format : XML or JSON

Returns auth key, used for functions requiring authentication, the auth key does not expire anymore. Other internal security features have been enabled to replace the expiring auth key.


field name:
data[api][username]
type:
text
special:
It does not matter which account the user logs in with as long as they are all synced.
info:
This is a username for any one of the synced services.
Such as Pownce, Twitter, or Jaiku.
Please note that Tumblr is currently the only service that accepts emails
as an authentication method. For all others, please only send the appropriate username
for authentication.
field name:
data[api][password]
type:
text/password
info:
This is the corresponding password for the synced service username above.
Such as Pownce, Twitter, Jaiku, etc...
For Jaiku please use the user's Jaiku API key as there password.
The user's Jaiku API key can be found @ http://api.jaiku.com
field name:
data[api][service]
type:
text
info:
This will contain the service onto which the username/password
is to be authenticated against. Example: Pownce, Twitter, Jaiku, etc...
field name:
data[api][key]
type:
text
info:
An API key is required to access our services. Your Developer API Key can be found here.
Posting
Post URL XML (Default): http://api.pikchur.com/api/post/

Post URL JSON: http://api.pikchur.com/api/post/json

Return Format : XML or JSON

For post, please use enctype="multipart/form-data".
Please note that posting url is http:// not https://

*Required Fields
field name:
data[api][auth_key]
type:
text
info:
This is the key sent to you once the user's credentials are authenticated.
Auth Key returned from Auth function
field name:
dataAPIimage
type:
file
max size:
25 Megs
accepted formats:
JPG, PNG, GIF
info:
This is the image data to be taken and used to create a Pikchur image.
field name:
data[api][status]
type:
text
max length:
140 Chars
note:
HTML will be striped.
info:
This is the message that will propegate to the services the user has synced with "updates on".
field name:
data[api][key]
type:
text
info:
An API key is required to access our services. Your Developer API Key can be found here.
Optional Fields
field name:
data[api][update][service]
type:
text
accepts:
Boolean (ON or OFF)
note:
If the data sent does not equal ON or OFF, the user's default settings will hold.
special:
Service is replaced with the actual name of the service in question.
Example: data[api][update][pownce]
A list of the user's services can be returned using the API call Get User Info.

info:
This is what overrides the user's settings and turns updates on/off for a particular service.
field name:
data[api][private]
type:
text
accepts:
Boolean (YES or NO)
note:
If the data sent does not equal YES or NO, the user's default settings will hold.
info:
This is what overrides the user's settings and makes a photo private if true.
Private photos do not show up on our timeline of pictures.
field name:
data[api][upload_only]
type:
text
accepts:
Boolean (TRUE or FALSE)
note:
If this node is optional , by default a status message is sent. If you send this node with any value other than "FALSE" it will disable status message posting.
info:
The purpose of this node is so that if you wish to simply upload a file with out sending a status message you can do so.
field name:
data[api][geo][lon]
type:
text
accepts:
Longitudinal Data
note:
Requires node data[api][geo][lat]
info:
This is the longitudinal data for the pik.
field name:
data[api][geo][lat]
type:
text
accepts:
Latitude Data
note:
Requires node data[api][geo][lon]
info:
This is the longitudinal data for the pik.
field name:
data[api][geo][location]
type:
text
accepts:
Can be sent instead of Latidude and Longitude data.
note:
Will be overridden if Lat/Lon sent
info:
The format can be anything from "Miami FL", "Best buy kendal miami", "Slovenia" etc.
field name:
data[api][geo][privacy]
type:
text
accepts:
Boolean (YES or NO)
note:
If the data sent does not equal YES or NO, the user's default settings will hold.
info:
This is what overrides the user's settings and makes a photo Geo Location private if true.
Geo Private photos do not show up on our map timeline of pictures.
Posting Image URL's
Post URL XML (Default): https://api.pikchur.com/api/post_url/

Post URL JSON: https://api.pikchur.com/api/post_url/json

Return Format : XML or JSON

*Required Fields
field name:
data[api][auth_key]
type:
text
info:
This is the key sent to you once the user's credentials are authenticated.
Auth Key returned from Auth function
field name:
data[api][file_url]
type:
text
accepted formats:
JPG, PNG, GIF
info:
This is where you will place the ful path (http://www. etc) to the imgage
field name:
data[api][status]
type:
text
max length:
140 Chars
note:
HTML will be striped.
info:
This is the message that will propegate to the services the user has synced with "updates on".
field name:
data[api][key]
type:
text
info:
An API key is required to access our services. Your Developer API Key can be found here.
Optional Fields
field name:
data[api][update][service]
type:
text
accepts:
Boolean (ON or OFF)
note:
If the data sent does not equal ON or OFF, the user's default settings will hold.
special:
Service is replaced with the actual name of the service in question.
Example: data[api][update][pownce]
A list of the user's services can be returned using the API call Get User Info.

info:
This is what overrides the user's settings and turns updates on/off for a particular service.
field name:
data[api][private]
type:
text
accepts:
Boolean (YES or NO)
note:
If the data sent does not equal YES or NO, the user's default settings will hold.
info:
This is what overrides the user's settings and makes a photo private if true.
Private photos do not show up on our timeline of pictures.
field name:
data[api][upload_only]
type:
text
accepts:
Boolean (TRUE or FALSE)
note:
If this node is optional , by default a status message is sent. If you send this node with any value other than "FALSE" it will disable status message posting.
info:
The purpose of this node is so that if you wish to simply upload a file with out sending a status message you can do so.
field name:
data[api][geo][lon]
type:
text
accepts:
Longitudinal Data
note:
Requires node data[api][geo][lat]
info:
This is the longitudinal data for the pik.
field name:
data[api][geo][lat]
type:
text
accepts:
Latitude Data
note:
Requires node data[api][geo][lon]
info:
This is the longitudinal data for the pik.
field name:
data[api][geo][location]
type:
text
accepts:
Can be sent instead of Latidude and Longitude data.
note:
Will be overridden if Lat/Lon sent
info:
The format can be anything from "Miami FL", "Best buy kendal miami", "Slovenia" etc.
field name:
data[api][geo][privacy]
type:
text
accepts:
Boolean (YES or NO)
note:
If the data sent does not equal YES or NO, the user's default settings will hold.
info:
This is what overrides the user's settings and makes a photo Geo Location private if true.
Geo Private photos do not show up on our map timeline of pictures.
Getting Info
Get URL XML (Default): https://api.pikchur.com/api/get/

Get URL JSON: https://api.pikchur.com/api/get/json

We do not ever send or trade sensitive information, the data returned with authentication is simply the users pikchur settings.

*Required Fields
field name:
data[api][type]
type:
text
note:
Allowed Types (value = "type")
type:
01 returns a user's Pikchur public badge info.
The user's Pikchur email and settings are NOT returned. :)
This method requires data[api][displayname]

02 returns a user's Pikchur (display name, synced accounts, settings, etc).
This method requires data[api][auth_key]

info:
This is where you specify the type of information you would like returned.
field name:
data[api][key]
type:
text
info:
An API key is required to access our services. Your Developer API Key can be found here.
Optional Fields
field name:
data[api][displayname]
type:
text
info:
This will contain the user's Pikchur display name.
field name:
data[api][auth_key]
type:
text
info:
This is the key sent to you once the user's credentials are authenticated.
Auth Key returned from Auth function
Your Developer API Key
Login to view your API key.
API News
Pikchur API v1.8 released!

New Features
• API End points changed to
http »http://api.pikchur.com
https »https://api.pikchur.com

• JSON return data added, simply add "json" to the end of any end point.

• Authentication Keys do not expire but other internal security features added.

Hope you guys like it! We are looking forward to seeing what kind of apps you crazy developers come up with ! :D

Pikchur API
Auth Example (simple html)
<form
    name="test_auth"
    method="post"
    action="https://api.pikchur.com/api/auth/"
>

<input
    type="text"
    name="data[api][username]"
>

<input
    type="password"
    name="data[api][password]"
>

<input
    type="hidden"
    name="data[api][service]"
    value="twitter"
>

<input
    type="hidden"
    name="data[api][key]"
    value="Your API Key"
>

<input
    type="submit"
    value="Get Auth Key"
Post Example (simple html)
<form
    name="test_post"
    method="post"
    action="http://api.pikchur.com/api/post/"
    enctype="multipart/form-data"
>

<input
    type="file"
    name="dataAPIimage"
>

<input
    type="text"
    name="data[api][status]"
>

<input
    type="hidden"
    name="data[api][auth_key]"
    value="Auth Key Generated Above"
>

<--- START OVERRIDE USER SETTINGS ---> <input
    type="hidden"
    name="data[api][update][pownce]"
    value="ON"
>

<input
    type="hidden"
    name="data[api][update][tumblr]"
    value="OFF"
>
<--- END OVERRIDE USER SETTINGS --->

<input
    type="hidden"
    name="data[api][key]"
    value="Your API Key"
>

<input
    type="submit"
    value="Upload to Pikchur!"
>
</form>
GET Example (simple html)
<form
    name="test_get"
    method="post"
    action="https://api.pikchur.com/api/get/"
>

<input
    type="text"
    name="data[api][displayname]"
>


<input
    type="hidden"
    name="data[api][type]"
    value="01"
>

<input
    type="hidden"
    name="data[api][key]"
    value="Your API Key"
>

<input
    type="submit"
    value="Get User Badge"
>
</form>
Developers
[Fav Web TV]
Diggnation | WLTV | The Totaly Rad Show

[Personal Blogs]
Peter's | Emmanuel's