API Documentation

All packages include API access to remotely sync the SCHED* database with your existing event database.

The API uses a simple REST method and we recommend using POST instead of GET. HTML data is only allowed for specified fields.

To create and edit SCHED* sites, use the methods below by passing the appropriate field values.

SITE: ADD URL: http://schedapi.sched.org/api/site/add

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
nameYesMust be a unique alpha-numeric string.
E.g.: myconf2010, festival201 etc.
32
event_startYesFull date + time for start of conference
Format: Unix Timestamp
80
event_endYesFull date + time when conference ends
Format: Unix Timestamp
80
titleNoTitle of the conference80
adminYesConference Admin's e-mail128
descriptionNoDetailed description of the conference255
Example GET Usage (all on one line)
http://schedapi.sched.org/api/site/add?api_key=secret&name=conferencename&event_start=1289308422&event_end=1289913242&title=MY-CONFERENCE&description=Description&admin=admin@example.com
Response
JSON encoded information about newly created site.
        {
          "site": "http://myconf.sched.org",
          "user":
            {
              "username": "myconf-admin",
              "email":"admin@example.com",
              "login":"http://myconf.sched.org/editor",
              "reset":"http://myconf.sched.org/password-new?user=myconf-admin&reset=NONCE_KEY"
            }
        }
        

Sync styling and naming info.

SITE: SYNC URL: http://your_conference.sched.org/api/site/sync

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
modify_dateNoLast sync timestamp. Format: Unix timestamp
20
Example GET Usage (all on one line)
http://your_conference.sched.org/api/site/sync?api_key=secret&modify_date=0
Response
JSON encoded site wording and CSS.
        {"title": "Your Conference",
        "base":"http://your_conference.sched.org",
        "apikey":"secret",
        "modified":1327416542,  // timestamp of last modified
        "dates":  {},           // list of dates
        "venues": {},           // list of venues
        "types":  {},           // list of types
        "style":  ""            // CSS styles
        }
        

To populate the Event table, use the methods below by passing the appropriate field values.

EVENT: ADD URL: http://your_conference.sched.org/api/event/add

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
event_keyYesMust be a unique alpha-numeric string.
E.g.: 123, PANEL4, ST45K etc.
32
nameYesName of the event120
event_startYesFull date + time for start of event
Format: YY-MM-DD HH:MM ()
40
event_endYesFull date + time when event ends
Format: YY-MM-DD HH:MM ()
40
event_typeYesUsed to filter events32
event_subtypeNoFor additional filter/organizing events32
descriptionNoDetailed description of the event
Links (HTML Tag <a>) allowed.
8kb
media_urlNoURL for media: audio/video/documents250
venueNoBuilding name / Company name etc.80
addressNoRoom # / Street Address250
mapNoDirect URL for event's location / map250
tagsNoComma-separated words and phrases250
Example GET Usage (all on one line)
http://your_conference.sched.org/api/event/add?api_key=secret&event_key=kn1&name=Opening+Keynote&event_start=2008-06-12+10am&event_end=2008-06-12+12:15pm&event_type=keynote&venue=Center+Hall

EVENT: MODIFY URL: http://your_conference.sched.org/api/event/mod

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
event_keyYesMust be a unique alpha-numeric string.
E.g.: 123, PANEL4, ST45K etc.
32
nameNoName of the event120
event_startNoFull date + time for start of event
Format: YY-MM-DD HH:MM ()
40
event_endNoFull date + time when event ends
Format: YY-MM-DD HH:MM ()
40
event_typeNoUsed to filter events32
event_subtypeNoFor additional filter/organizing events32
descriptionNoDetailed description of the event
Links (HTML Tag <a>) allowed.
8kb
media_urlNoURL for media: audio/video/documents250
venueNoBuilding name / Company name etc.80
addressNoRoom # / Street Address250
mapNoDirect URL for event's location / map250
tagsNoComma-separated words and phrases250
activeNoY = Event is active, N = Event is deactivated and hidden1
Example GET Usage (all on one line)
http://your_conference.sched.org/api/event/mod?api_key=secret&event_key=kn1&venue=Main+Auditorium

EVENT: DELETE URL: http://your_conference.sched.org/api/event/del

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
event_keyYesMust be a unique alpha-numeric string.
E.g.: 123, PANEL4, ST45K etc.
32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/event/del?api_key=secret&event_key=kn1

Note: The delete API only deactivates an event and hides it from the public schedule. This is the recommend way of handling cancelled events as any existing links to this event clearly display "[CANCELLED]" while still maintaining data integrity.


The following API methods let you retrieve data from the Event and User tables in CSV and JSON formats.

EVENT: LIST URL: http://your_conference.sched.org/api/event/list

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
sinceNoRetrieve events modified since timestamp (Unix epoch time)4
formatNoLeave blank to get CSV file or set to "json"40
statusNoSet to "del" to fetch only references to deleted events40
Example GET Usage (all on one line)
http://your_conference.sched.org/api/event/list?api_key=secret&since=1282755813format=json&status=del
Response
List of all conference events exported in CSV or JSON, depending on the "type" parameter.

EVENT: COUNT URL: http://your_conference.sched.org/api/event/count

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
sinceNoRetrieve events modified since timestamp (Unix epoch time)40
statusNoSet to "del" to get count of deleted events40
Example GET Usage (all on one line)
http://your_conference.sched.org/api/event/count?api_key=secret&since=1282755813&status=del
Response
Total number of events.

USER: LIST URL: http://your_conference.sched.org/api/user/list

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/user/list?api_key=secret
Response
List of all attendees exported in CSV file.

Create user account

USER: ADD URL: http://your_conference.sched.org/api/user/add

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
usernameYesAllowed: alphanumerics, period, underscore40
emailYesUsers Email Address40
passwordNoUsers desired password. Optional. Random password will be generated if none provided.32
phoneNoUsers Phone Number (xxx-xxx-xxxx)40
privacyNoDefault is 0 (off), Set to 1 (on)1
roleNoOne of the following: "attendee", "speaker", "artist", "sponsor", "exhibitor", "staff"10
eventsNoComma separated string of event id's which the user will be connected to1024
full_nameNoUsers full name40
aboutNoShort bio/description. Some HTML allowed (a,b,br,i,em,strong)8192
avatarNoPublicly accessible, not shortened URL to gif, jpg or png image. Images are copied and resized on our server.1024
send_emailNoDefault is 1 (on), Set to 0 (off). Whether to send e-mail with login credentials to user.1
Example GET Usage (all on one line)
http://your_conference.sched.org/api/user/add?api_key=secret&username=desired_username&email=user@example.com
Response
JSON encoded username and password of newly created user account.

USER: ACTIVE URL: http://your_conference.sched.org/api/user/active

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/user/active?api_key=secret
Response
List of all attendees with "username" and "lastactive" fields. Sent as CSV file.

USER: AVATAR URL: http://your_conference.sched.org/api/user/avatar

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
usernameYesExisting user username40
avatarYesPublicly accessible, not shortened URL to gif, jpg or png image. Images are copied and resized on our server.1024
Example GET Usage (all on one line)
http://your_conference.sched.org/api/user/avatar?api_key=secret&username=username&avatar=http://example.com/image.jpg
Response
"Ok" string upon successful avatar save, error message otherwise.

USER: EVENTS URL: http://your_conference.sched.org/api/user/events

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/user/events?api_key=secret
Response
List of all attendees and events they selected. Sent as CSV file.

The following API methods let you add users to event and to retrieve data about event attendees in JSON format.

NOTE: most of these methods require your application to have valid user session key.
Session key is obtained via http://your_conference.sched.org/api/auth/login with proper user credentials.

AUTH: LOGIN URL: http://your_conference.sched.org/api/auth/login

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
usernameYesUsername of user account40
passwordYesUser password32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/auth/login?api_key=secret&username=user_name&password=user_pw
Response
Valid session key to use with the GOING methods.

GOING: ADD URL: http://your_conference.sched.org/api/going/add

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
sessionYesAuthenticated user session key, obtained via /api/auth/login40
usernameYesUsername of user to add to events40
eventsYesComma separated string of event id's which user will attend32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/going/add?api_key=secret&session=valid_session_key&username=user_name&events=id1,id2,id3
Response
Text string with message, for each event "Adding event:event_key to user:user_id" or "Couldn't find event:event_key", separated by newlines

GOING: DEL URL: http://your_conference.sched.org/api/going/del

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
sessionYesAuthenticated user session key, obtained via /api/auth/login40
usernameYesUsername of user to add to events40
eventsYesComma separated string of event id's which user will be removed from32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/going/del?api_key=secret&session=valid_session_key&username=user_name&events=id1,id2,id3
Response
Text string with message, for each event "Removed event:event_key to user:user_id" or "Couldn't find event:event_key", separated by newlines

GOING: SCHEDULE URL: http://your_conference.sched.org/api/going/schedule

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
sessionYesAuthenticated user session key, obtained via /api/auth/login40
usernameNoOptional username to look up other public user's profiles40
Example GET Usage (all on one line)
http://your_conference.sched.org/api/going/schedule?api_key=secret&session=valid_session_key
Response
HTML formatted user's schedule.

GOING: ALL URL: http://your_conference.sched.org/api/going/all

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
Example GET Usage (all on one line)
http://your_conference.sched.org/api/going/all?api_key=secret
Response
Exported list of all attendees. Sent as JSON.

GOING: LIST URL: http://your_conference.sched.org/api/going/list

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
sessionYesAuthenticated user session key, obtained via /api/auth/login40
usernameYesUsername for which to get attended events40
Example GET Usage (all on one line)
http://your_conference.sched.org/api/going/list?api_key=secret&session=valid_session_key&username=user_to_get_events_for
Response
Exported list of user's events. Sent as JSON.

Get HTML formatted schedule for mobile display

SCHEDULE: GET URL: http://your_conference.sched.org/api/schedule/get

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
seYesAuthenticated user session key, obtained via /api/auth/login40
oNoOffset from which to start getting events40
lNoLimit, How many records to get40
fNoFilter: Type, venue, search40
tNoTimestamp: last received event start. Format: Unix timestamp40
mNoMode: string, one of the following filters: friends, user, event, get (no filters), s (for search queries)40
Example GET Usage (all on one line)
http://your_conference.sched.org/api/schedule/get?api_key=secret&se=valid_session_key&o=10&l=20&f=type/music&m=get
Response
HTML formatted schedule for mobile display.

Get HTML formatted schedule for mobile display

ASSETS: BANNER URL: http://your_conference.sched.org/api/assets/banner

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
modify_dateNoUnix Timestamp formatted last update40
Example GET Usage (all on one line)
http://your_conference.sched.org/api/assets/banner?api_key=secret&modify_date=0
Response
Base 64 encoded image.

The following API methods let you to assign and remove roles for existing users.

These methods don't require to be authenticated as user.

ROLE: ADD URL: http://your_conference.sched.org/api/role/add

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
usernameYesUsername of user which is to be assigned a role40
roleYesOne of the following: "attendee", "speaker", "artist", "sponsor", "exhibitor", "staff"10
eventsNoComma separated string of event id's which the user will be associated with1024
Example GET Usage (all on one line)
http://your_conference.sched.org/api/role/add?api_key=secret&username=user_name&events=id1,id2,id3
Response
API error in case of the invalid request, "Ok" for successful action.

ROLE: DEL URL: http://your_conference.sched.org/api/role/del

FieldRequiredDescriptionMax Length
api_keyYesProvided to you by us32
usernameYesUsername of user which is to be removed a role40
roleYesOne of the following: "attendee", "speaker", "artist", "sponsor", "exhibitor", "staff"10
eventsYesComma separated string of event id's which the user will be disconnected from1024
Example GET Usage (all on one line)
http://your_conference.sched.org/api/role/del?api_key=secret&username=user_name&events=id1,id2,id3
Response
API error in case of the invalid request, "Ok" for successful action.