Podio API Documentation

Views

Views can be used to limit the items returned when viewing an app.

There are two types of views:

  • Saved views which are views a user have saved for future reuse by the user or other members of the space.
  • Last used views, which stores the views which was last used by the user on the given app.

Views define the sort order, of which the following are possible:

  • created_by: Sorted by who created the item
  • created_on: Sorted by when the item was create
  • last_edit_by: Sorted by who last edited the item
  • last_edit_on: Sorted by when the item was last edited
  • app_item_id: Sorted by the app item id
  • item_id: Sorted by the item id
  • activity: Sorted by the last activity on the item (create, edits, comments, files, ratings, etc.)
  • priority: Sorted by the priority of the item. This is the indirect value set by rearranging items relative to each other
  • title: Sorted by the title of the item
  • like: Sort by the average rating
  • approved: Sort by the average rating
  • rsvp: Sort by the average rating
  • fivestar: Sort by the average rating
  • yesno: Sort by the average rating
  • thumbs: Sort by the average rating
  • {field_id}: The id of the field to sort by, which can be fields of type "state", "text", "location", "money", "number", "calculation", "progress", "duration", "app", "date", "contact", "category" and "question".

Views can also define a list of keys and values, that limits the items returned. The key can be one of the following:

  • created_by: Filter by the author (list of auth objects, see below)
  • created_via: Filter by which medium the item was created through (list of auth client ids)
  • created_on: Filter by when the item was created
  • last_edit_by: Filter by the last user who edited the item (list of auth objects, see below)
  • last_edit_via: Filter by which medium the item was last updated through (list of auth client ids)
  • last_edit_on: Filter by when the item was last edited
  • external_id: Filter by the external id set on the item. This will normally be used to find items by their id in other systems. Please be aware that when choosing the field name, you should not clash with any other key listed here (e.g. approved, rsvp, etc...)
  • item_id: Filter by the ids of the item.
  • app_item_id: Filter by the unique id of the item.
  • title: Filter by the title of the item
  • tags: Filter by the tags on the item
  • like: Filter by items with at least one like
  • approved: Filter by items with at least one rating set to the given value
  • rsvp: Filter by items with at least one rating set to the given value
  • fivestar: Filter by items with at least one rating set to the given value
  • yesno: Filter by items with at least one rating set to the given value
  • thumbs: Filter by items with at least one rating set to the given value
  • {field_id}: Filter by a certain field
  • {location_field_id:subfield}: Filter by a subfield (country, state, city, postal_code) of a location field

Views that take a list of user ids as values can include zero. Zero will be replaced by the active users user id when the query is executed.

Auth objects

Auth objects for created_by and last_edit_by have the following structure:

{
  "type": The type of auth, either "user" or "app",
  "id": The id of the auth, either the user_id or the app_id, use 0 for the active user
}
 

Fields

The following types of fields can be used for filtering using the field_id as key and the following values depending on the type of field. Beware that not all field types can be used for filtering. Most notably text fields cannot be used for filtering. You can use the Search interface when working with text filtering.

state

A list of valid states. The value null will match items with no state.

[
  {state},
  ... (more states)
]

category

A list of valid states. The value null will match items with no state.

[
  {state},
  ... (more states)
]
 

number

The interval the number should be in

{
  "from": The from value,
  "to": The to value
}

 

money

The interval the money amount should be in

{
  "from": The from value,
  "to": The to value
}

 

calculation

The interval the calculation should be in

{
  "from": The from value,
  "to": The to value
}
 

progress

The interval the progress should be in

{
  "from": The from value (between 0 and 100),
  "to": The to value (between 0 and 100)
}
 

duration

The interval the duration should be in (in seconds)

{
  "from": The from value (non-negative),
  "to": The to value (non-negative)
}
 

app

A list of items that are referenced on the field. The value null will match items with no app reference.

[
  {item_id},
  ... (more item ids)
]
 

contact

A list of contacts that are referenced on the field. The value null will match items with no contact.

[
  {profile_id},
  ... (more profile ids)
]

 

question

A list of option ids that are selected for the field. The value null will match items with no option selected.

[
  {option_id},
  ... (more option ids)
]

 

date

The interval the date should be in. The dates can be either relative or absolute. For absolute dates the normal date format is used.

Accepts:

  • date in format Y-M-D
  • range of dates Y-M-D--Y-M-D


For relative dates the following format is used:

[operator][count][unit][round] without the brackets. The parts are specified below:

  • operator: Either + or -. Defaults to +.
  • count: The relative count
  • unit: The unit to use, either d for days, w for weeks, m for months and y for years. Default to d.
  • round: If set to r the date will be rounded to the unit.

{

  "from": The from value,
  "to": The to value

}

Relative date examples:

  • +1d - plus 1 day
  • +1w - plus one week
  • +1wr - to the beginning of the next calendar week
  • +1m - plus one calendar month
  • +1mr - to the beginning of the next calendar month
  • +1y - plus one calendar year
  • +1yr - to the beginning of the next calendar year