Get and change the unique Id of an Item (the shortest one) - podio

Is it possible to get and change an unique id of an item via Podio API? That one we enable on App Settings > Advanced.

No, there is now way for you to change an unique id of an item via the API (or by any other mean).

Related

How to search for, or get entryId with Kaltura API

Hi I'm trying to get the entryId back (so I can update thumbnails) with the kaltura API. How do i do this. My thought is to use title and category. But can't figure out how to do that. Any suggestions?
You can use the list action on the media service - see here for ducomentation.
You can use the nameEqual field to search for the specific entry. I suggest search by the name. If you want, you have more field you can search on in the filter

Podio Webhook - What should the hook syntax be if I want to it to tigger if a specific field in a specific app contains a specific value

I am trying to detect when a user changes the status of an item in a Podio app. For example: I have an expenses app in Podio. I would like to be notified when the status of an item is changed. The field is a "Category" field type and Let's say the category options are "Pending", "Paid", and "Canceled" I want to be notified only when the "Paid" category value is active
I can see documentation on Podio's API documentation site for how to create a hook if the value of an item is changed "item.update" but how do you go a bit further to specify that a field is updated to a specific value or condition?
The Podio API hook options referenced above can be found here: https://developers.podio.com/doc/hooks
Podio webhooks doesn't support that granular conditions. You can create webhook for item.update which will be fired each time item is modified, you also can create webhook for specific field and it will be fired on any update for that field (so if other fields in item are modified then this webhook won't trigger).
Additionally, the three hooks item.create, item.update and item.delete
can also work on a field level. If you use "app_field" as the ref_type
and an app field_id as the ref_id your hook will only be triggered if
the changes happen to that particular field.
Also, there is different way of achieving similar result. Have a look on Podio workflows: https://help.podio.com/hc/en-us/articles/204366037-Advanced-workflows . Workflow can be configured to be triggered when specific field is set to specific value which is what you were looking for.

What is external_id in Podio API?

What is it's purpose and what are good practices about it? Should it be a random number? A string with meaning?
It doesn't seem like it's set automatically when an item is created in Podio.
I want a unique id to differentiate different items in a Podio app, is external_id the best way to do this?
You can differentiate between items with their item_id which will always be unique.

How do make an external API call from a Podio App field?

I have a location field called origin and a field called distination. I am trying to calculate a third field called distance by using an address from both the Origin and the Destination field? What is the easiest way to achieve this?
Here's one idea. Use the Google map's destination API to get the distance between between the 2 location fields. I am not sure how I can make these 2 API calls.
Sorry, but I don't think that's currently possible within Podio. I tried to get this to work using Podio's Calculation field and Google's Distance Matrix service. Unfortunately, the Calculation field doesn't allow access to the XMLHttpRequest API, which is what you would likely need to access any 3rd-Party APIs.
You need to use a third party tool to calculate the distance. Then update a number field (or maybe text field depending on your need) in Podio with the result. The calculation field cannot be use for such purposes.

One signal - create segment to push to recent location

I would like to, via OneSignal REST API :
filter the push to users in a certain location (as in the doc) but it lacks sample code/relevant routes. The steps would be :
store tags for users (documented here, this is fine)
creating a segment (I don't see this in the docs)
push by filtering by segment (this is covered here)
Similarly I would like to be able to filter the push to users that visited a location in a certain date range (ex. last week, last month...). I am not completely sure this is possible using only OneSignal.
The minimum I would need is how to create a segment with OneSignal.
Edit : looks like there is a way in the dashboard, but I need to do it programmatically.
(I help work on OneSignal) OneSignal does not support programmatically targeting by a location at this time but we're planning on adding support for this in the near future.
One way to do some of this until then would be to provide the name or position of a location as tags. For instance you could use the tags lat=41.123, lon=55.331, then target users programmatically where the tags are greater than and less than the ranges you specify.
OneSignal does not provide built-in functionality to target by historical locations and we do not plan to add support for this, but you may be able to use tags to achieve your desired result.
Note that OneSignal does allow you to target by Player ID, so you could always store your users' Player IDs in your own system and do the calculation of who should receive a notification on your own.