Skip to content

🔗 Connect to the Dime.Scheduler through the certified Power Platform connector.

License

Notifications You must be signed in to change notification settings

dime-scheduler/powerplatform-connector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Documentation | Changelog | Roadmap

âš¡Power Platform Connector âš¡

Connect to Dime.Scheduler through a PowerApps custom connector.

Getting started

Creating the custom connector

In the src directory, run the following paconn command:

paconn create --api-prop apiProperties.json --api-def apiDefinition.swagger.json --icon icon.png

If the connector already exists, you may want to run this command:

paconn update --api-prop apiProperties.json --api-def apiDefinition.swagger.json --icon icon.png

Follow the instructions in the terminal. You'll need to select an environment, and when updating a connector, select the connector to overwrite the changes.

You may have to login, which you can do by running paconn login and follow the instructions in the terminal.

To validate the OpenAPI definition, run the following command in the src directory:

paconn validate --api-def apiDefinition.swagger.json

Creating a connection

When the connector has been added to your environment, you should create a connection. These variables are essential to the succesful integration between the Power Platform and Dime.Scheduler:

Parameter Value
Environment The Dime.Scheduler environment
API Key this is the key of the subscription that allows you to use Dime.Scheduler's connect hub. You can register here. Once enrolled, navigate to your user profile and copy the primary key of your subscription.

Using the connector

The connector can be used in any PowerApp or Flow. The connector will be available under the "Custom" section.

Development

Adding an action is done by simple OpenAPI management through the apiDefinition.swagger.json file in the src directory:

"/timeMarker": {
  "post": {
    "summary": "Add, update or remove a time marker",
    "description": "Add, update or remove a time marker.",
    "operationId": "Timemarker",
    "tags": ["indicator"],
    "parameters": [
      {
        "name": "timeMarker",
        "in": "body",
        "schema": {
          "$ref": "#/definitions/timeMarker"
        },
        "description": "JSON request body containing the contents of the requested entity to be imported."
      }
    ],
    "consumes": ["application/json"],
    "produces": ["application/json"],
    "responses": {
      "200": {
        "$ref": "#/responses/200"
      },
      "400": {
        "$ref": "#/responses/400"
      },
      "500": {
        "$ref": "#/responses/500"
      },
      "default": {
        "$ref": "#/responses/default"
      }
    }
  }
},

For starters, copy, paste and modify the following metadata:

  • Summary
  • Description
  • Operation ID

Next is the endpoint of the Azure function that you'll need to specify. The naming convention is Entity. Finally, you'll need to specify the entity type in the body.

Contributing

We welcome contributions. Please check out the contribution and code of conduct guidelines first.