Apps

Connections to other applications - because nothing exists in a silo.

In the Peoplelogic.dev platform, an App represents a connection to another system - whether that's external to your instance or another part of our infrastructure. Here are a few examples:

Storing data from an App

When you connect to an application, there are typically two different types of data - sensitive and non-sensitive. While this seems intuitive, you should distinguish between things like a Stripe customer ID or a Slack channel ID and a Merge Linked Account Token.

Within the App API, we make a clear distinction between the two types - providing secretData and appData storage. The secretData storage is encrypted within the database (beyond simply encrypting at rest), while appData is not. You use both storage mechanisms the same way - by PATCHing your App via the API. Let's take a look.

Creating and using an App

First, we use the API to create a simple App within the current Organization. As you can see, we are storing sensitive data (in this case, the returned Merge linked account token) in the secretData.

POST https://api.peoplelogic.dev/api/v1/app
Content-Type: application/json
Authorization: Bearer {{demoOrgToken}}

{
  "type": "pl:sync:merge:hris",
  "internal": true,
  "name": "Demo Connection with MS Entra",
  "externalId": "abc",
  "secretData": {
    "accountToken": "{{entraToken}}"
  }
}

This returns a 201 response code when its successful. You can may have many App instances of the same type, but the combination of type and externalId must be unique.

To edit an App, just execute a PATCH call against the same API endpoint using the ID you received from the previous call. Here's an example:

PATCH https://api.peoplelogic.dev/api/v1/app/{{previousAppId}}
Content-Type: application/json
Authorization: Bearer {{demoOrgToken}}

{
  "appData": {
    "demo": "Hi there!"
  }
}

You'll receive a 200 response code when successful and your data will be updated!

Last updated

Was this helpful?